0

我正在使用 kgdb 模块和 gdb 调试 linux 内核。当试图在某个地址设置断点时,gdb 将它设置在另一个错误的地址。

(gdb) b *0xffffffff81528690
Breakpoint 1 at 0x81528690

有谁知道为什么?

4

1 回答 1

0

我发现了问题所在。

默认情况下运行 gdb 而不指定可执行文件将强制 32 位模式,这就是地址被截断的原因。

在为 x86_64 架构构建的内核映像上运行它之后,我可以在 64 位长地址上中断。

于 2017-08-04T23:32:53.737 回答