我想基于一个开放项目为英特尔平台编写自己的虚拟机管理程序,并了解如何对其进行调试。
我有真正的stend可以调试,但它在故障时重新启动,很难找到错误。我发现我可以使用QEMU/KVM和嵌套的虚拟机管理程序来调试它。可能还有其他的变种?据我所知,VMware有很多缺点。在AMD平台上,我使用的是SimNow。如果主机系统是Windows,那就更好了。
谢谢你的建议。
发布于 2019-11-17 23:32:25
这取决于你的口味。Qemu/GDB组合是一个很好的开始。以下是一些有用的提示,如果您的主机平台是英特尔CPU,您可以:
qemu-system-x86_64 -enable-kvm -cpu host -s -S ...。Qemu将引导系统管理程序及其gdbserver,并暂停它,直到收到来自gdb的continue命令。
gdb /path/to/hypervisor然后,target remote :1234要将gdb连接到gdbserver
hbreak而不是break,但是您只剩下4个断点<>H113从这一点开始,您可以继续调试一个简单的应用程序
https://stackoverflow.com/questions/58876835
复制相似问题