最終更新:2019-10-06 (日) 08:39:18 (2030d)
ELF
Top / ELF
Executable and Linking Format
Red Hatを始めとするLinuxディストリビューションの標準バイナリ形式
man elf
ファイル
- 実行可能ファイル
- 共有ライブラリ (.so)
- オブジェクトファイル (.o)
構造
ヘッダ ELFヘッダ ファイルの先頭 ELF/プログラムヘッダテーブル セクション コード .text データ .rodata 文字列情報とか セクション名 .shsrtrtab? ヘッダ ELF/セクションヘッダテーブル ファイルの末尾
ELFヘッダ
- マジックナンバー
- ABIとか
- ELF/プログラムヘッダテーブルのサイズ、エントリ数
- ELF/セクションヘッダテーブルのサイズ、エントリ数
ELF/プログラムヘッダテーブル
ELF/セクションヘッダテーブル
- 取り外しのために後ろに配置
ツール
メモ
- ELF形式ファイルに配置されているテキストとデータ領域のオフセットは実行時のメモリ配置とは違うので再配置が必要