关于windows驱动开发环境搭建

每个人的环境不一样,遇到的问题也不一样,对于驱动开发环境搭建花了我一天时间(插下嘴,就像昨天上班有人通知我周报的时间要填写完整,我才意识到时间安排了就一定要让它达到一定的效果),让我差点放弃了即将开始的挑战。

基本上这个环境和《寒江独钓》里的环境是一致的,但是自己亲自试验过程还是碰到些问题,在google上找到的都是一些经过转载之后再转载的东西了,越转越乱,浪费我n多时间。

 

软件安装:

1、  安装WDK,这个只需要默认全部安装就可以。

2、  下载SRVINSTW.EXE和DebugView.exe软件,Srvinstw.exe这个软件可以把你开发的驱动添加到系统服务项里,同时当你启动运行时可以使用DebugView.exe来显示一   些内核调试信息(要启动Capture->Capture Kernel选项)

3、  连接调试软件WinDbg,这个也是我设置很久了才可以调试(安装在host机器上,也就是非调试机,在我的环境里使用虚拟机作为调试机,Win7本机系统作为非调试机)。

 

配置问题:

1、  对虚拟机的配置(被调试机):

a、 添加联机调试通信管道(非调试机通过管道和调试机进行内核信息跟踪),方法是在虚拟机Setting里添加Serial Port,其效果截图如下:

        

b、 更改虚拟机系统的启动方式

       这里顺便介绍一个小工具(Everything,可以快速搜索硬盘上的文件),找到boot.ini,更改虚拟机系统的启动方式,截图如下(需要注意红框的部分):

       

       这个是添加操作系统可以以调试的状态启动,其中我在这里遇到的问题是:

       如果你的虚拟机系统里本身就有一个通信端口com1,那么你再上一步里做的添加就会是SerialPort2,那么在这步里debugport=com2 ,网上有很多人直接转载的,情         况不一定符合。

c、  修改虚拟机设备管理其的com2端口的波特率为115200,不是11520。

 

2、 非调试机的配置环境(host):

a、添加windbg的快捷方式的设置,在快捷方式的目标里后面添加:

-b -k com:port=\\.\pipe\com_1,baud=115200,pipe

注意:这里的pipe仍然和上面虚拟机设置的事一样的com_1,而不是com_2。

b、设置环境变量,(这个是参考看雪论坛里面,根据个人的情况设置的,因为对于一些概念还不是很清楚,就不打算解释太多,有机会了再回来补这个空,如果清楚的朋友希望也可以告诉我一下)。

                   新建用户环境变量:_NT_SYMBOL_PATH

变量值为:

D:\MySysSymbols;SRV*D:\MyLocalSymbols*http://msdl.microsoft.com/download/symbols;D:\Projects\objchk_wxp_x86\i386

其中,SRV*D:\..../sysmbols这个路径是windows内核符号表,WinDbg会从http相应的站点下载所需的符号表。D:\Projects\objchk_wxp_x86\i386是我build之后的驱动符号表目录(同.sys同一个目录下)。

 

调试过程:

1、先启动虚拟机系统,在打开windbg程序

2、选择调试模式

 

可能遇到的问题:

1、 启动连接不上,一直Waitting reconnect…,表示连接失败,很可能是因为管道端口没设置好,或者虚拟机boot.ini里面的debgport设置有误。

2、 笔记本host机是否需要设置com端口?

这个是我这次最浪费时间的地方,其实我查过了笔记本似乎有默认的设置com port,而且波特率也是15200,并且能自适应波特率。关于这个方面没有确切去证实,只能这样说。

3、 调试成功的效果图:

      

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值