我已经编译了一个支持 kgdb 的内核,并且正在尝试调试它。我有两台机器正在运行,一台是调试机(运行 kgdb 内核),另一台是我用来调试它的机器。它们通过两根串行电缆连接。我可以通过 ttyS0(在两台机器上)操作调试机器的串行控制台,并且可以通过 ttyS1(在两台机器上)使用 gdb 连接到 kgdb。
直到某一点为止,这都可以正常工作:我启动调试机器;它等待 gdb 连接; gdb 连接;我可以使用 gdb 设置断点或其他东西;我告诉 gdb 继续;并且内核继续启动。
问题是当我下一次命中断点时,gdb 似乎没有意识到已命中断点。内核会在需要时停止,但 gdb 不会执行任何操作。它只是坐在那里,好像什么也没发生过一样。
有谁知道这可能是什么原因造成的?