放映功能偏移当拆卸功能,GDB将显示在基座16的存储器地址,但在碱的偏移量10。GDB拆机:在底座16
实施例:
(gdb) disassemble unregister_sysctl_table
Dump of assembler code for function unregister_sysctl_table:
0x00037080 <+0>: push %ebp
0x00037081 <+1>: mov %esp,%ebp
0x00037083 <+3>: sub $0x14,%esp
0x00037086 <+6>: mov %ebx,-0xc(%ebp)
0x00037089 <+9>: mov %esi,-0x8(%ebp)
0x0003708c <+12>:mov %eax,%ebx
0x0003708e <+14>:mov %edi,-0x4(%ebp)
函数偏移是在<+N>
旁边的地址,你可以看到他们是在基地10
当Linux内核崩溃,它显示使用基地16回溯:
[ 0.524380] [<c10381d5>] unregister_sysctl_table+0x65/0x70
这是非常烦人的必须将回溯地址从基地16转换为基地10以能够找到所需的指令。
Can gdb被告知显示具有16个基点偏移的反汇编输出?