- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
windows驱动开发和调试环境搭建
Windows驱动开发和环境搭建【文章标题】: Windows驱动开发和调试的环境设置【文章作者】: haikerenwu【使用工具】: VC6.0,VMware6.0.3,Windbg【电脑配置】: 惠普笔记本xp sp3(一)VMWare安装篇VMWare的安装一路Next即可,关于其序列号,百度一下就能找到,虚拟机安装完成之后,需要安装操作系统,我在虚拟机中安装的是windows xp sp2系统。点击“文件”----“新建”----“虚拟机”进入新建虚拟机的向导,配置虚拟系统参数选择虚拟系统文件的兼容格式(新手推荐选择默认选项)按照默认设置继续点击下一步,选择好您需要的操作系统,此处我选择的是Windows XP Prefessional。设置虚拟机名称和虚拟操作系统安装路径,我单独空出来一个F盘,将虚拟机和虚拟操作系统全部装在该盘。 配置网络模式(推荐选择NAT,一般主机不用做任何的设置虚拟机就可以利用主机上网)。配置虚拟磁盘的容量。在这里可以直接单击完成,来完成基本操作设置,磁盘默认空间是8GB,用户可以根据自己的实际使用情况来调整大小,也可以自定义分区。 操作完成之后,在“VM”菜单下有个“setting。。。”菜单,点击此菜单,在CD-ROM中选择合适的选项,我使用的是Use ISO image选项,将我的xp sp2操作系统的ISO映像路径设置好,安装操作系统。点击ok之后,启动虚拟机,即开始安装操作系统,安装过程跟普通装机过程相同。安装完成之后,启动操作系统,然后在VM菜单下点击“Install VMWare Tools”,把虚拟操作系统的驱动装好。(二)VMWare设置篇虚拟操作系统安装完成之后,就是设置该系统为Windbg双机调试做准备。关闭虚拟操作系统,添加一个虚拟串口,因为我的电脑是笔记本,现在的笔记本很少配置串口,所以要虚拟一个串口,这个过程由VMWare完成,图解如下。点击VM菜单下setting菜单,在弹出的设置对话框中点击“Add”按钮。点击Next按钮,在弹出的对话框中选择“Output to named pipe”。设置pipe的名字,注意此名字在windbg设置中使用,另外第三项选择“The other end is anapplication”,勾选上Connect at power on。在虚拟机操作系统的boot.ini文件里填入如下内容:multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=Microsoft Windows XP Professional - debug /fastdetect /debug /debugport=com1 /baudrate=115200如图:因为在boot.ini中设置的debug输出端口为com1,所以在虚拟操作系统的设备管理器中设置COM1端口的波特率为115200。至此虚拟机设置完成。(三)Windbg设置创建Windbg的桌面快捷方式,在目标一栏后面添加“-b -k com:pipe,port=\\.\pipe\com_1,resets=0”,如下图所示:设置Windbg的符号路径,Ctrl+s打开设置窗口,符号路径一般有两个(可以设置多个),一个视设置保存系统符号文件的路径,一个是你的驱动的pdb文件的路径,以分号隔开。设置符号路径。“Ctrl+S”打开设置窗体,符号路径一般有两个(可以有多个),一个是你设置保存系统符号文件的路径,另一个是你驱动的PDB的路径,以分号隔开。重启虚拟操作系统,选择debuge模式。双击之前创建的Windbg的快捷方式,它会自动去连接调试虚拟操作系统。“Connected to Windows XP 2600 x86 compatible target at (Thu Aug 13 10:30:25.843 2009 (GMT+8)), ptr64 FALSE”代表连接成功。我们把编译好的驱动文件(*.sys)放到虚拟操作系统里,回到WinDbg,按“Ctrl+Break”,WinDbg会让虚拟操作系统暂停下来,我们也可以在WinDbg的命令栏输入命令了,在这里输入“bu drivername!driverentry”(本例是bu HelloDDK!driverentry,大小写不限)可以在驱动的DriverEntry函数的入口点下一个延迟断点,其实BU的意思就是Set Unresolved Breakpoint,WinDbg会记住这个断点,当这个驱动被加载了并且执行到这个地方,WinDbg会暂停虚拟操作系统让你进行调试操作。drivername是你的驱动名字,比如我在这里的驱动名字是Hello
文档评论(0)