2024年6月15日发(作者:)

使用WinDbg和虚拟机调试Windows驱动程序教程(转)

驱动调试攻略(WinDbg)

驱动调试是一个系统级调试方式,所以调试工具用WinDbg是最佳选择。驱动调试一

般情况下,需要两台电脑进行。一台作为主机进行驱动调试,另一台作为目标机进行驱动

安装。当然如果没有多余的电脑,我们可以安装VMware模拟系统调试(虚拟机)。只是

对电脑的配置要求比较高。本文介绍使用WinDbg及VMware进行调试的具体设置及方

法。这些资料在网络很难找到,笔者也是吸取了他人很多宝贵意见才完成的,供大家学习

讨论。其实用SoftIce可以单机调试驱动,但是有个问题就是在SoftIce启动前驱动可能已

经启动了。

VMware Support 中说,自 4.0.18.0 版本之后的 WinDbg 都支持了通过 pipe 来

进行调试,不过微软对此并没有任何说明。所以,在VMware中虚拟被调试的系统,然后

通过VMware虚拟一个com端口。使用这个虚拟的端口,就可以用 WinDbg 进行调试

了。

具体步骤如下:

1. 安装和设置WinDbg,VMware

首先,请到微软官方网站

/whdc/devtools/debugging/,下载最新

版本的WinDbg工具,建议使用6.0以上版本的WinDbg做为调试工具。VMware也可

以在网站上找到,当然使用高版本比较好。 安装过程比较简单,就不在此多做介绍。唯一

要注意的是,安装完虚拟机后,请在VMware主菜单“VM”中选择“Install VM

Tools…”,完成系统驱动文件的安装。

安装完这两个软件后,请在VMware中安装跟你的电脑版本相同的操作系统。例如:

你的电脑安装的是WindowsXP Professional,那么最好在Vmware中安装相同版本。至少

是相同的系统,Windows XPßà Windows XP、Windows 2000ßà Windows 2000。这

样会在驱动调试过程中避免不必要的麻烦。笔者使用的操作系统为Windows XP

Professional。

我们将使用电脑的COM1口最为调试口。

1.1设置 VMware 的虚拟com

1. 运行 VMware ,点击 "Edit virtual machine settings"

2. 点击 "" 来运行 VMware 的 Hardware Wizard

3. 选择 "Serial Port",点 "下一步"

4. 选择 "Output to named pipe",点 "下一步"

5. 第一框里保持默认的 ".pipecom_1"

第二框里选"This end is the server."