.dynsym
ELF 実行可能ファイルの動的シンボル テーブル ( ) の解釈を調べていました。属性を使用してシンボルのアドレスを示し、属性を使用してセクション内の文字列の開始のオフセットを示すことで、シンボル テーブル.symtab
(シンボルごとに 16 バイト) を正常に解釈できました。しかし、同じ方法を使用して動的シンボル テーブル ( ) を解釈できません。Aliさんのブログ[1]を参考にしました。value
name
.strtab
.dynsym
Ali さんの別のブログ [2] を見ましたが、ハッシュ テーブルを使用して動的シンボル テーブルを解釈する方法がわかりません。明らかに、シンボル テーブルで使用されるマッピングと同じではありません。ダイナミック シンボル テーブル (.dynsym) をどのように解釈すればよいですか?
また、私が見ている ELF 実行可能ファイルには、 と の 2 つのセクションが.hash
あり.gnu.hash
ます。ハッシュ値については、どのセクションを参照すればよいですか?
[1] http://blogs.oracle.com/ali/entry/inside_elf_symbol_tables
[2] http://blogs.oracle.com/ali/entry/gnu_hash_elf_sections