Я искал интерпретацию динамической таблицы символов (.dynsym
) исполняемого файла ELF. Я мог успешно интерпретировать таблицу символов .symtab
(16 байтов для каждого символа), используя атрибут value
для обозначения адреса символа и атрибут name
для обозначения смещения начала строки в разделе .strtab
. Но я не могу интерпретировать динамическую таблицу символов (.dynsym
) с помощью того же метода. Я использовал блог Али [1] для справки.
Я просмотрел другой блог Али [2], но я не понимаю, как интерпретировать динамическую таблицу символов с помощью хеш-таблицы. Ясно, что это не то же отображение, которое используется в таблице символов. Как мне интерпретировать динамическую таблицу символов (.dynsym)?
Кроме того, исполняемый файл ELF, на который я смотрю, имеет два раздела, а именно .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 < / а>