【发布时间】:2011-04-29 17:35:06
【问题描述】:
(gdb) info registers ds
ds 0x7b 123
(gdb) disassemble
Dump of assembler code for function printf@plt:
0x0804831c <+0>: jmp DWORD PTR ds:0x804a008
=> 0x08048322 <+6>: push 0x10
0x08048327 <+11>: jmp 0x80482ec
End of assembler dump.
谁能描述我如何将 ds:0x804a008 地址映射到线性地址?我可以使用“x/xw 地址”命令吗?如果不清楚,我想知道代码跳转中第一个 jmp 函数的位置。
【问题讨论】:
-
这是针对不使用平面地址空间的平台吗?
-
ds:是默认数据段,在指令中没有指明其他段寄存器时使用。虽然可以为段设置偏移量,但所有 x86 架构都将其设置为零,因此您可以忽略段前缀。
标签: memory-management gdb