驱动开发:WMWare+Windbg调试环境搭建

转载 2016年05月30日 18:53:37

转自:http://blog.csdn.net/xuepiaosong/article/details/8236702  

            http://yexin218.iteye.com/blog/545187

            http://blog.sina.com.cn/s/blog_79ba23780101qvwt.html

一.配置环境

    主机:SC_Win7_64Bit_SP1

    虚拟机:SC_Win7_64Bit_SP1

   VMware版本:11

   VS2012 with update 5

   WDK8.0

二.配置过程

  1.安装VS2012 with update 5

  2.安装WDK8.0

  3.虚拟机中安装SC_Win7_64Bit_SP1

     安装完成后,在"虚拟机设置"->"添加"->"串行端口"->"输出到命名管道".命名管道名称为“\\.\pipe\com_2”,因为com_1端口被printer占用。最后点完成并勾选"轮询时主动放弃CPU"。在虚拟机系统的设备管理器中找到com2的属性设置,将位/秒改为115200.

    Vista和XP不同, 没有boot.ini文件, 需要用bcdedit进行启动设置。

   3.1. 在administrator权限下, 进入command line模式, 键入bcdedit命令, 会出现以下界面:

   3.2 然后, 设置端口COM2, baudrate为115200 (除COM1外, 也可以用1394或USB. 1394用起来比COM口快多了, 当然前提是你需要有1394卡及其驱动. 很恶心的是Vista不再支持1394的文件传输协议, 但是用windbg双机调试还是可以的)
命令为:
bcdedit /dbgsettings {serial [baudrate:value][debugport:value] | 1394 [channel:value] | usb }

bcdedit /dbgsettings serial baudrate:115200 debugport:2


   3.3 接着, 我们需要复制一个开机选项, 以进入OS的debug模式
命令为:
bcdedit /copy {current} /d DebugEnty
DebugPoint 为选项名称, 名字可以自己定义. 然后复制得到的ID号.


   3.4接着增加一个新的选项到引导菜单
bcdedit /displayorder {current} {ID}
这里的{ID}的ID值是刚 生成的ID值.


   3.5激活DEBUG : bcdedit /debug {ID} ON
这里的{ID} 的ID值还是刚才的ID值.

   3.6命令执行成功后, 重新启动机器.或者更简单的图形界面设置:在msconfig界面中,选Boot,再选Advanced options,在选择Debug、Debug port、Baud rate都打上钩。选择DebugEntry[debug]作为等入口。

   4.安装.配置Windgb

   4.1安装完WDK8.0后会自带Windbg。在桌面创建一个Windbg的快捷方式。修改快捷方式目标为:"C:\Program Files (x86)\Windows Kits\8.0\Debuggers\x64\windbg.exe" -b -k com:port=//./pipe/com_2,baud=115200,pipe。也就是添加-b -k com:port=//./pipe/com_2,baud=115200,pipe。注意com_2对应虚拟机创建的串口序号。

   4.2下载符号表,符号表对应的是虚拟机中OS的版本。打开Windbg,File->Symboy file pah.输入srv*c:\Symbols*http://msdl.microsoft.com/download/symbols。c:\Symbols是下载的符号表目录。

如果勾选了Reload,那么相当于输入了.reload命令,这时开始下载。不过好像经常下载不成功。可以在https://msdn.microsoft.com/en-us/windows/hardware/gg463028手动下载对应的版本在安装即可。

   4.3配置环境变量:在系统的环境变量中新建一个_NT_SYMBOL_PATH系统变量,值为C:\symbols;C:\symbolsMy;SRV*C:\symbols*http://msdl.microsoft.com/download/symbols   这样设置以后,系统的调试符号就在C:\symbols下,而我们自己驱动的调试符号就在C:\symbolsMy下
当符号文件不匹配时,Windbg会自动连网从http://msdl.microsoft.com/download/symbols下载符号文件到C:\symbols,下次再用到时就不用下载了

  4.4现在我们假设你的驱动代码放在D:\mydriver目录中;系统级Symbol文件存放在C:\symbols目录中,这些Symbol文件是从微软的网站上http://msdl.microsoft.com/download/symbols下载而来,这个网址是不可以用IE直接打开的,File Symbol File Path...界面中选择Reload,WinDbg会自动帮你下载;驱动生成的Symbol文件存放在D:\mydriver\objchk_wxp_x86\i386目录中。
a) 设置驱动Symbol路径,WinDbg->File-> Symbol File Path...为 SRV*C:\WINDOWS\Symbols*http://msdl.microsoft.com/download/symbols; D:\mydriver\objchk_wxp_x86\i386
b) 设置驱动源文件路径,WinDbg->File-> Source File Path…为D:\mydriver
c) 为了保险起见,我们同时设置系统变量。
My Computer -> Properties-> Advanced Tab-> Enviroment Variables-> Add.
_NT_DEBUG_BAUD_RATE=115200
_NT_SYMBOL_PATH=SRV*C:\symbols*http://msdl.microsoft.com/download/symbols
_NT_ALT_SYMBOL_PATH = D:\mydriver\objchk_wxp_x86\i386
_NT_SOURCE_PATH = D:\mydriver
同时请把驱动编译后生成在D:\mydriver\objchk_wxp_x86\i386目录下的*.pdb、*.sys、*.map、*.exp、*.lib文件一并拷贝到系统的C:\symbols目录中。





Windows驱动开发环境搭建详细记录

1.需要软件:VMware、Visual Studio、WDK以及官网的ddkbuild.bat和ddkbuild.cmd两个文件、DDKWizard、INSTDRV、DebugView 这几个软件...
  • spiderlily
  • spiderlily
  • 2013年01月18日 13:44
  • 6329

Windows驱动开发环境搭建之Hello World

驱动程序的生成[个人配置]win7_x64 vs2015 WDK10按照书上的例子进行编写,只包含了类似下面 ntxxx.h 的头文件,都无法找着:#include #include .....
  • bxsec
  • bxsec
  • 2017年09月08日 16:39
  • 186

UEFI开发环境搭建

1.安装VS2008  (安装时我选择了Visual Studio 2008 x64 的组件,我在真实EFI Shell下运行efi程序)   2.下载efi-toolkit,EFI_Toolki...
  • fengfengdiandia
  • fengfengdiandia
  • 2013年01月17日 10:12
  • 7185

Win64 驱动内核编程-1.环境搭建

驱动开发环境及其双机调试环境搭建 开发环境搭建 使用工具:vs2015,Windows 10 SDK_10.0.14393,WDK10.0.14393.0 (1)安装VS2015  随便一个版本...
  • u013761036
  • u013761036
  • 2017年02月26日 13:53
  • 1552

菜鸟WDF驱动开发系列(1):VM+Windbg调试平台的搭建

因为打算进行一下Win7的驱动开发,于是不得不硬着头皮以一个新手的姿态重新学习驱动的东西,驱动开发只能用恶心来形容,也许是因为我根本还不算入门,单就搭建一个可以设断点的调试平台就让我耗尽心力——当然,...
  • w10800337
  • w10800337
  • 2014年03月27日 14:25
  • 802

Windows驱动开发:2 调试环境搭建

Windows驱动开发:2 调试环境搭建这篇给大家讲讲调试环境的搭建 搭建调试环境的话 我建议大家使用VirtualKD配合WinDbg的方式 有了VirtualKD这个辅助工具 调试就是快!首先...
  • u013605639
  • u013605639
  • 2017年03月08日 17:33
  • 117

WDF驱动开发(1)- 一个简单的WDF驱动(non-pnp)

最近因为工作关系,接触了一下WDF驱动开发。 WDF驱动其实是微软公司提供的一套驱动开发的框架。有了这个框架之后,开发驱动会简单一些。WDF本身是从WDM基础上封装而成的。WDF里面封装了很多对象,如...
  • zj510
  • zj510
  • 2013年11月27日 14:19
  • 15743

Windows驱动开发VS2012 DDK/WDK的环境配置

[作者简介]      常用网名: 灯火阑珊     出生日期: 1995.XX.XX     生理特征: 男     个人网站: geons.cn     E-mail:     109070096...
  • u012541747
  • u012541747
  • 2016年02月19日 00:45
  • 3559

Win7X64下驱动的测试环境搭建.

今天在真机上试验了 NT驱动X64版的安装和调试输出. 试验环境 Win7X64Sp1中文旗舰版 + WDK7600 + vs2010 禁止Win7驱动强制签名 实现过了, 用bc...
  • LostSpeed
  • LostSpeed
  • 2013年09月06日 22:46
  • 2033

菜鸟WDF驱动开发系列(2):调试第一个KMDF驱动程序

根据系列上一篇的内容,已经基本作好了驱动调试环境的配置,现在着手开始试一下怎么用WinDBG调试。每一位新手在开始学习驱动开发的时候相信总会看大量的资料,如我第一篇提到的几本书的确是不错的,但名著总有...
  • w10800337
  • w10800337
  • 2014年03月27日 14:33
  • 1581
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:驱动开发:WMWare+Windbg调试环境搭建
举报原因:
原因补充:

(最多只允许输入30个字)