リンカ・ローダと実行形式
Linuxなどでよく使われるELF形式のファイルについて正しいものはどれか。
- A実行ファイル専用の形式で、オブジェクトファイルには使えない
- Bオブジェクトファイル・実行ファイル・共有ライブラリのいずれにも使われ、ヘッダとセクションなどで構成される
- C画像を保存するための形式である
答えと解説を見る
正解:B. オブジェクトファイル・実行ファイル・共有ライブラリのいずれにも使われ、ヘッダとセクションなどで構成される
ELF(Executable and Linkable Format)は、Linuxをはじめ多くのUNIX系のOSや組込み機器で使われるプログラムのファイル形式です。先頭のELFヘッダに、対象のCPUや64ビットかどうか、実行を始める番地などが書かれ、その後に.textや.dataなどのセクションと、ローダがメモリに読み込む単位を表すプログラムヘッダが続きます。WindowsではPE形式、macOSではMach-O形式が使われます。
- A. オブジェクトファイルも共有ライブラリもELFです。
- B. 正しい。Executable and Linkable Formatの略です。
- C. プログラムのための形式です。