问题描述
我想调试在嵌套虚拟化环境中运行的用户应用程序。 因此,我构建了一个静态版本的QEMU并在KVM支持下运行它。 我将第一个由QEMU运行的VM称为主机VM,然后在主机VM内部运行另一个QEMU,并用来宾VM对其进行命名。最后,我可以在来宾VM内运行用户应用程序。 该环境可以正常工作,现在的问题是,如何调试这种环境,以及如何同时遵循用户应用程序和主机VM中的KVM中的控制流?
现在,我在kvm中使用build而不是kvm模块,并使用gdb附加主机VM。在添加符号文件[用户可运行的二进制文件]并通过'hb main'设置硬件断点后,控制流可以正确停止在用户应用程序的main函数中,但是gdb无法从任何虚拟地址读取任何数据并仅返回味精如下:
(gdb) x main
0x404091 <main>: Cannot access memory at address 0x404091
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)