Определить адрес загрузки и точку входа очищенного образа ядра Linux
У меня есть кросс-компиляция инструментария для встроенной системы (mipsel) на моем x86 Linux. Я знаю, как создать собственное ядро (давайте назовем образ «vmlinux») для него и как удалить это изображение через
objcopy -S -O binary vmlinux vmlinux.bin
Для дальнейшей обработки мне также нужны адрес загрузки и точка входа изображения.До зачистка это не проблема, чтобы определить их черезscripts/mksysmap
или, более конкретно, через
nm -n vmlinux | grep -v '\( [aNUw] \)\|\(__crc_\)\|\( \$[adt]\)' > System.map
Затем я могу определить адрес загрузки и точку входа через
awk '/A _text/ { print "0x"$1; }' < _System.map
awk '/T kernel_entry/ { print "0x"$1; }' < System.map
Теперь проблема в том, что иногда я сам не собираю ядро, а получаю предварительно собранное ядропосле он уже был лишен своих символов черезobjcopy, Кто-нибудь может сказать мне, как это сделать? Я не очень хорошо разбираюсь в построении ядра и использовании инструментария. Обенм а такжеobjdump не нравится раздетое изображение, говоря
vmlinux.bin: File format not recognized