使用WinDbg和虚拟机调试驱动程序v2.0

使用WinDbg和虚拟机调试驱动程序v2.0
v2.0更新:
——对文章作了些文字修改;
——加入了使用VMware虚拟机配置的相关内容,而不是只根据个人喜好只写的Virtual PC的配置;
——加入了虚拟机操作系统为Vista32的配置情况,Vista64后续有了调试经验后再加上;

软件下载:

WinDbg:http://www.microsoft.com/whdc/devtools/debugging/default.mspx

VirtualPC:http://www.microsoft.com/downloadS/details.aspx?FamilyID=04d26402-3199-48a3-afa2-2dc0b40a73b6&displaylang=en

VMware: www.google.cn/search?keyword="VMware Cracked Download :)"

正文:

在开发Windows驱动程序的时候,是需要使用双机调试的。而使用虚拟机调试,则至少可以获得以下好处:

  • 不需要另外一台额外的物理机,省钱才是King Road!
  • 调试驱动需要频繁地重启被调试机器,用虚拟机可以节省好多时间,so,省时!
  • 驱动程序的调试和测试需要多样化的操作系统环境和软件环境,用虚拟机做多个操作系统vhd的备份非常easy,而物理机,就只能装多个操作系统或者作多个ghost了(省力)。

有这样省钱省时又省力的好事,当然不能错过了。当然,有时因为虚拟机跟物理机的差异,有些问题必须要在物理机上调试,这时当然是省不了的了(话说开发Windows驱动也从来不是什么省时省心的好事儿)。但是,绝大多数时候,你还是可以使用虚拟机调试的。

使用虚拟机调试的大致示意图如下:

有了感性的认识之后,下面讲解具体的配置过程:

首先,需要在物理机上安装虚拟机,我安装的是Virtual PC 2007,当然VMware也可以,仅仅作为一个调试的载体来说,VirtualPC的好处是简单易用。然后需要在你的虚拟机上安装好操作系统,操作系统的版本取决于你要在哪一个操作系统上调试你的驱动程序,可以直接去网上download别人已经安装好的vhd文件(Virtual Hard Disk file),比如说微软的网站上,一般会提供最新操作系统的体验版vhd,vhd文件时VMware和VirtualPC通用的。虚拟机以及虚拟机操作系统的安装过程不在此详述,网络上有很详细的资料。

WinDbg更新的也很快,一般来说推荐用最新的,但是有时候最新的会有些小问题,比如说刚刚最新的版本(6.10),在使用其Local Kernel Debugging的功能时,必须开启本机的"/debug"启动参数。

软件安装完成后,剩下的就是配置了,首先是对虚拟机配置,然后是物理机,物理机和虚拟机是通过命名管道相连接的,所以首先要配置虚拟机的命名管道。

【虚拟机】命名管道配置

在Virtual PC 中,命名管道的配置如下面的图所示:

使用WinDbg和虚拟机调试驱动程序v2.0_第1张图片

使用WinDbg和虚拟机调试驱动程序v2.0_第2张图片

VMware中,配置命名管道的方法如下:(还是截图)

使用WinDbg和虚拟机调试驱动程序v2.0_第3张图片 使用WinDbg和虚拟机调试驱动程序v2.0_第4张图片

 使用WinDbg和虚拟机调试驱动程序v2.0_第5张图片 (未完待续)

参考资料:

Debugging Help(Debugging Tools for Windows)

你可能感兴趣的:(使用WinDbg和虚拟机调试驱动程序v2.0)