Формат файла ядра ELF

Если не копаться в исходниках GDB, где я могу найти документацию о формате, используемом для создания файлов ядра?

] Спецификация ELF оставляет открытым формат файла ядра, поэтому я думаю, это должно быть частью спецификаций GDB! К сожалению, Я не нашел никакой помощи в этом отношении в документации GNU gdb.

Вот что я пытаюсь сделать: сопоставить виртуальные адреса с именами функций в исполняемых файлах / библиотеках, составляющих запущенный процесс. Для этого я сначала хотел бы выяснить, из основного файла, карту виртуального адресного пространства с именем исполняемого файла / библиотеки, а затем копаться в соответствующем файле, чтобы получить символическую информацию.

Теперь readelf -a core сообщает мне, что почти все сегменты в основном файле относятся к типу load - я бы предположил, что это сегменты .text и .bss / .data из всех участвующих файлов, а также сегмент стека. За исключением этих сегментов нагрузки, есть один сегмент примечания, но, похоже, он не содержит карты. Итак, как информация о том, какому файлу соответствует сегмент, хранится в основном файле? Включают ли эти сегменты «загрузки» информацию о файле определенным образом?

14
задан ks1322 6 March 2018 в 09:38
поделиться