
少なくとも2つの標準があります。実行可能で接続可能な形式(ELF)、それらの一つ
- System VアプリケーションバイナリインタフェースAMD64アーキテクチャプロセッサの補足(LP64およびILP32プログラミングモデルを含む)バージョン1.0
- ツールインタフェース標準(TIS)実行可能ファイルと接続形式(ELF)仕様バージョン1.2
以前のTIS ELF規格1.2には106ページがあり、SysV ABIには157ページがありますが、63〜86ページ(23ページ)のELFのみをカバーしています。
これら2つの規格は互いにどのような関係がありますか? LinuxとGNU Linkerにはどちらを使うべきですか?ツールインタフェース標準とは何ですか?
答え1
TIS/ELFの一つ一般的にELFを扱い、システムV ABIx86_64アプリケーションバイナリインタフェースを文書化した補足資料です。
2 番目の文書には x86_64 に関する情報は含まれていません。そのアーキテクチャは、作成時に存在しなかったためです。
答え2
ツールインタフェース標準とは何ですか?
ELF形式は、Tool Interface Standards Committee(TIS)で、さまざまな(Unixシリーズ)オペレーティングシステム用の移植可能なオブジェクトファイルの標準として選択されています。
LinuxとGNU Linkerにはどちらを使うべきですか?
ほぼすべてSystemV標準を使用しています。
name@host:~$ file /bin/ls
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, stripped