了解内核的装入地址和入口地址,vmlinux.bin与vmlinux

了解内核的装入地址和入口地址

利用readelf

#mips-linux-uclibc-readelf -e vmlinux

............

Entry point address:               0x802bd000

...........

[Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al

[ 0]                   NULL            00000000 000000 000000 00      0   0  0

[ 1] .text             PROGBITS        80060000 000800 1eb704 00  AX  0   0 2048

...........

可以看到.text段装入地址为0x80060000,内核入口地址为0x802bd000

使用objdump

也可以获得这些信息, -d参数反汇编vmlinux可以得到装入地址, -f参数可以得到入口地址。

查看System.map文件

#cat System.map | grep _text 

#cat System.map | grep kernel_entry

vmlinux.bin执行:

[root@localhost rootfsBuild]# objdump -t vmlinux.bin 2>/dev/null | grep "_etext$"

[root@localhost rootfsBuild]# objdump -h vmlinux.bin 2>/dev/null | grep " .text "

 

vmlinux执行:

[root@localhost rootfsBuild]# objdump -h vmlinux 2>/dev/null | grep " .text "

  0 .text         001f6490  80060000  80060000  00002000  2**5

[root@localhost rootfsBuild]# objdump -t vmlinux 2>/dev/null | grep "_etext$"

80256490 g       *ABS*      00000000 _etext


你可能感兴趣的:(内核,vmlinux.bin,vmlinux)