Какая информация содержится в первых 832 байтах файла .so? - PullRequest
5 голосов
/ 23 июня 2011

Я видел много подобных вещей, как это:

open("/lib64/libpthread.so.0", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260W \0242\0\0\0"..., 832) = 832

Что там в начале 832 байта?

1 Ответ

3 голосов
/ 23 июня 2011

Если приведенный выше список был захвачен при запуске программы, то вполне вероятно, что вы видите загрузчик времени выполнения в действии, поскольку он вводит общие библиотеки и разрешает символы перед запуском программы.

Что касаетсяПосле прочтения исходного содержимого каждый файл ELF начинается с заголовка ELF, который описывает макет и содержимое остальной части файла - для получения дополнительной информации см. учебное пособие " libelf by Example ".

...