一种使用Hypervisor对虚拟机单步运行的方法、装置、介质及产品制造方法及图纸

技术编号:43336760 阅读:26 留言:0更新日期:2024-11-15 20:32
本发明专利技术提供一种使用Hypervisor对虚拟机单步运行的方法、装置、介质及产品,包括:基于xen Hypervisor虚拟机监控器,在dom0中运行GDB模拟程序,在hypervisor层运行GdbServer模拟程序;所述GDB模拟程序与用户命令交互并进行参数解析,解析信息传递给GdbServer模拟程序,并运行domu目标程序虚拟机;所述GdbServer模拟程序对domu目标程序虚拟机进行控制,实现目标程序断点和单步运行。本发明专利技术使用纯软件的方案实现非Linux应用层软件调试的单步运行功能,弥补GDB覆盖场景的不足。使开发人员可以快速的进行程序开发和问题调试,解决程序中的问题。

【技术实现步骤摘要】

本专利技术属于信息,具体涉及一种使用hypervisor对虚拟机单步运行的方法、装置、介质及产品。


技术介绍

1、在程序开发中经常会使用gnu调试器(gdb),它可以帮助开发人员在程序出现错误时快速定位问题并进行调试。在调试过程中,断点和单步运行是一种非常有用的工具,可以帮助开发人员控制程序的执行流程并观察程序状态。断点允许开发人员在程序执行到指定位置时暂停执行,以便观察程序的状态和执行情况。通过设置断点,开发人员可以逐步执行程序,并在执行到某一特定位置时停下来检查变量的值、函数的返回结果等,从而快速定位程序中的错误。使用单步运行调试,可以让开发人员观察程序执行的路径,并了解程序的控制流是如何转移的,从而更好地理解程序的结构和逻辑。可以说断点及单步运行是gdb程序调试、定位问题、追踪程序执行流程、交互式调试的基础。

2、目前gdb主要应用在linux的应用层程序中,因为linux的应用层为gdb提供了丰富的工具。对于linux内核使用kgdb(kernel gnu debugger),所述kgdb允许在linux内核运行时设置断点和跟踪程序执行本文档来自技高网...

【技术保护点】

1.一种使用Hypervisor对虚拟机单步运行的方法,其特征在于,包括:

2.根据权利要求1所述的使用Hypervisor对虚拟机单步运行的方法,其特征在于,所述GDB模拟程序传递给GdbServer模拟程序的解析信息包括目标程序各个函数、源文件行号以及汇编指令的对应关系,还包括目标程序各个指令函数在内存中的相对位置。

3.根据权利要求1所述的使用Hypervisor对虚拟机单步运行的方法,其特征在于,所述目标程序断点的实现方法包括:

4.根据权利要求1所述的使用Hypervisor对虚拟机单步运行的方法,其特征在于,所述目标程序单步运行的实现方法包...

【技术特征摘要】

1.一种使用hypervisor对虚拟机单步运行的方法,其特征在于,包括:

2.根据权利要求1所述的使用hypervisor对虚拟机单步运行的方法,其特征在于,所述gdb模拟程序传递给gdbserver模拟程序的解析信息包括目标程序各个函数、源文件行号以及汇编指令的对应关系,还包括目标程序各个指令函数在内存中的相对位置。

3.根据权利要求1所述的使用hypervisor对虚拟机单步运行的方法,其特征在于,所述目标程序断点的实现方法包括:

4.根据权利要求1所述的使用hypervisor对虚拟机单步运行的方法,其特征在于,所述目标程序单步运行的实现方法包括:

5.一种使用hypervisor对虚拟机单步运行的装置,其特征在于,包括:

6.根据权利要求5所述的使用hypervisor对虚拟机单步运行的装置,其特征在于,所述gdb模拟器包括解析模块,解析模块的解...

【专利技术属性】
技术研发人员:张云飞吴春光崔彦召申利飞
申请(专利权)人:麒麟软件有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1