制作用于调试管理程序的测试台

Making a test-stend for debugging a hypervisor

我想基于一个开放项目为英特尔平台编写我自己的管理程序,我想了解如何调试它。

我确实有调试的打算,但是一有故障就重启,很难找错。我发现我可以使用 QEMU/KVM 和嵌套的管理程序来调试它。可能还有其他变体吗?据我了解,VMware 正处于故障之中。在 AMD 平台上,我使用过 SimNow。 如果宿主系统是Windows.

就好了

谢谢指教

这取决于你的口味。这对夫妇Qemu/GDB是一个好的开始。如果您的主机平台是 Intel CPU,这里有一些有用的提示,您可以:

  • 像这样启动 qemu:qemu-system-x86_64 -enable-kvm -cpu host -s -S ....
    Qemu 将启动管理程序及其 gdb 服务器并暂停它,直到它从 gdb 接收到 continue 命令。
  • 像这样启动 GDB:gdb /path/to/hypervisor 然后,target remote :1234 将 gdb 附加到 gdbserver
  • 使用hbreak代替break,但你只剩下4个断点
  • 从这里开始,您可以像一个简单的应用程序一样继续调试