windows 7 + windbg 双机内核调试环境搭建(物理机+虚拟机)

一件事情是配置好虚拟机,我这里使用的VM里安装win 7,在虚拟机关机的情况下安装配置虚拟机的相关选项
在这里插入图片描述
如果配置选项中含有打印机选项,可以先把打印机移除,因为打印机也占了虚拟系统的一个com口
在这里插入图片描述
点击添加按钮添加串行端口
在这里插入图片描述
配置使用命名管道,我这里直接命名为\.\pipe\curtis_com1,并且勾选"轮询时主动放弃"选项在这里插入图片描述
配置完虚拟机,第二件事情就是配置虚拟机中win 7系统
开启虚拟机,进入系统,配置GuestOS Win7系统的启动项。
1、以管理员身份运行cmd
在这里插入图片描述

2、键入bcdedit命令,查看当前启动项,输出如下:
在这里插入图片描述

一般只有一个标识为{current}的启动加载器是当前的启动配置。

3、建立一个新的启动项,并且使用bcdedit检查是否copy成功。

bcdedit /copy {current} /d “Windwos7”
在这里插入图片描述
在这里插入图片描述

4、设置新的启动项。
bcdedit /debug ON
bcdedit /bootdebug ON
在这里插入图片描述

5、查看当前的调试配置:
bcdedit /dbgsettings
在这里插入图片描述

一般来说,会显示出使用的第一个串口,波特率为115200bps,和期望的一致,不需要修改。

6、选择菜单的超时,我设置为15秒:

bcdedit /timeout 15
在这里插入图片描述

7、重新启动,当需要调试时就用调试模式进入。

最后一步就是开启调试,在主机中找到windbg的安装路径,windbg在进行SDK安装时为可选项,选上就可以了。

windbg的安装路径为:

C:\Program Files (x86)\Windows Kits\10\Debuggers\x64

在这个文件夹下可以找到windbg.exe
管理员权限执行cmd 并且cd到此安装路径,执行命令

windbg.exe -d -k com:pipe,port=\\.\pipe\curits_com1,baud=115200

在执行这个命令之前,先开启调试虚拟机
在这里插入图片描述
主机和虚拟机连接成功
在这里插入图片描述
在windbg 命令框中输入“g”让系统跑起来,因为此时虚拟机默认是断在那的,命令下完之后,系统开始跑,windows开始启动
在这里插入图片描述
在这里插入图片描述
系统开启之后,任意时间点可以把系统断住
在这里插入图片描述
然后就可以进行你想要的操作了

猜你喜欢

转载自blog.csdn.net/qq_42931917/article/details/108265848