目录
前言
所谓双机指主机(Host)和目标机(Target)(测试机),目标计算机用来进行驱动程序部署和测试,还有调试。
由于在调试期间, 通常会停止处理器上的指令执行,你会感到机器僵死、卡顿, 因此通常使用两个计算机系统。
在某些情况下,你可以使用虚拟机用作第二个系统。 但是,如果你的代码正在与低级硬件通信,则使用虚拟机可能不是最佳方法。
本篇使用VMWare 虚拟机作为目标机。
图(一) 主机和目标机调试图示
一、配置虚拟机
1. 在VMware上安装跟主机同样版本的Windows.
2.虚拟机的网络配置如下图(二)所示:
3.虚拟机上安装Windows SDK, Windows WDK,安装方法请参考我的另一篇文章:Windows 驱动开发环境设置_Trail2009的博客-优快云博客
二、在主机上配置目标机以便进行驱动程序部署和测试
注意:这里的配置的目的是为了驱动程序的部署和测试,不是调试!
因为在Windows 10的 WDK 1507 及更高版本中,不能用 Visual Studio 进行调试。
所以本篇及下篇还是使用WinDBG进行驱动源码级调试,具体使用WinDBG Preview版本。
1.在Vs2019中建立一个Kernel mode 驱动程序:
2.选中工程,右键,打开属性页面:
3.在属性页面配置目标机:
4、在如下配置页面,指定目标机(上面所建的虚拟机)的IP,如红框所示:
5、然后下一步,记下下一个页面的端口号和key,保持该页面不动:
三、在目标机上配置以便主机能与之通信
- 在目标计算机上,以管理员身份打开“命令提示符”窗口。 输入此命令以启用调试:
C:\> bcdedit /set {default} DEBUG YES - 键入以下命令以启用测试签名:
C:\> bcdedit /set TESTSIGNING ON - 键入此命令可设置主机的 IP 地址和key:
C:\> bcdedit /dbgsettings net hostip:192.168.1.3 port:50520 key:LXZGNT3M28PE.OCMN43RGV8K9.6JXKI6TDJNKX.4QSEI46PWSRB - 键入以下命令,确认已正确设置 dbgsettings。
C:\> bcdedit /dbgsettings
key LXZGNT3M28PE.OCMN43RGV8K9.6JXKI6TDJNKX.4QSEI46PWSRB
debugtype NET
hostip 169.168.1.3
port 50520
dhcp Yes
操作成功完成。
四、在主机进一步配置
回到主机,继续上次的配置步骤 :
直到看到如下面的配置信息,表明配置成功,(如出现“由于目标计算机积极拒绝,无法连接。 (10061)”,可重启动虚拟机再试):
五、在主机上安装WinDBG preview版本
至此,双机编译,部署,测试,调试环境准备完毕!!