驱动开发 - WDK 调试及 SVN 环境搭建
由于从公司辞职了,所以以前在公司里搭建的驱动开发环境也就 Game Over 了,
同样由于那环境是很久以前搭建的,自己也有很多记不清楚的地方了,
而且其中还是有很多需要注意的地方的,所以在这里顺便做一个环境搭建的总结,
以后再要用的时候也会很方便的。
WDK 调试环境搭建:
安装 WDK:
自然首先是安装 WDK 了,这个好办,直接到官网上下载,然后安装就 OK 了,
注意的是,在安装中最好是选择安装全部,并且最好是安装在 C 盘下。
设置调试环境:
这个其实也好办,就是使用 WinDbg 来调试虚拟机或者通过串口线可以使用 WinDbg 来调试另外一台 PC 。
其中呢,如果你机器还算好,可以同时跑的起几个 Visual Studio + 虚拟机的话,那就没必要使用 2 台 PC 。
但是如果你机器不咋的的话,像我自己家里的这种几年前的古董,跑个虚拟机就卡的跟什么似的的话,
那最好是准备 2 台 PC ,不然调试的时候会让人抓狂的。还有值得一提的是,在虚拟机中调试的话,
实质上,是虚拟机通过命名管道来虚拟出一个串口,所以其速度和真实的使用两台 PC 通过串口调试是有区别的。
WinDbg 调试虚拟机:
设置虚拟机:
首先在虚拟机中安装 XP ,然后修改该 XP 系统的根目录下的 BOOT.INI 文件
(该文件默认是隐藏的,并且其属性为只读,所以需要先去掉只读属性)。
比如本来的 INI 文件为:

那么需要将该 INI 文件修改为如下:

上面的最后加的这一句表示我们加载的 Windows 内核的调试端口指定为 Com4 ,并且设置波特率为 115200 。
在这里设置好 BOOT.INI 文件后,我们便需要设置虚拟机中的 XP 了,
实际上是虚拟机通过命名管道来像我们的 PC 虚拟出一个串口。
具体设置详见插图:


(注意下面的 com_4 ,这个 com_4 和我们在 BOOT.INI 文件中的设置是相对应的)

设置 WinDbg:
再提一点,可以通过设置 WinDbg 的启动参数来确保 WinDbg 能够调试虚拟机。
通过设置如下的启动参数可以使得 WinDbg 调试串口 \\.\pipe\com_4 。
C:\WinDDK\Debuggers\windbg.exe -b -k com:port=\\.\pipe\com_4,baud=115200,pipe

WinDbg 调试另外一台 PC:
要使用 WinDbg 来调试另外一台 PC 的话,至少得准备 2 台 PC 吧,呵呵。
在这里将装有 WDK 和 WinDbg 成为主机,而将另外一台 PC 称之为客户机吧。
设置客户机:
同样是修改 BOOT.INI 文件,这一步和上面的是一模一样的。
比如将 BOOT.INI 文件中的调试端口设置为使用 com_4 进行调试。
设置 WinDbg:
C:\WinDDK\Debuggers\windbg.exe -b -k com:port=\\.\com1,baud=115200

http://www.cnblogs.com/BoyXiao/archive/2011/05/06/2038578.html
驱动开发 - WDK 调试及 SVN 环境搭建的更多相关文章
- windows phone 8 开发系列(一)环境搭建
一:前奏说明 本人一名普通的neter,对新玩意有点小兴趣,之前wp7出来的时候,折腾学习过点wp7开发,后来也没怎么用到(主要对微软抛弃wp7的行为比较不爽),现在wp8已经出来一段时间了,市场上也 ...
- 【ARM-Linux开发】在win下开发的eclipse+yougatoo+jlink环境搭建
在win下开发的eclipse+yougatoo+jlink环境搭建 一 工具的安装 第一步:安装gcc编译工具 yagarto-bu-2.21_gcc-4.6.2-c-C++_nl-1.19.0_g ...
- Windows7下驱动开发与调试体系构建——0.概述
本文集内容为windows7x64下驱动开发与调试体系构建,内容目录如下: 1.驱动开发的环境准备 2.R3与R0的通信示例 3.自建调试体系概述 4.在x64下使用汇编代码 5.实战反调试标记位(N ...
- 最简单的SVN环境搭建过程
本文简单描述最简单的SVN环境搭建过程 搭建环境:windows (个人验证了windows2003,windows xp) 使用软件:Setup-Subversion-1.6.17 //Serve ...
- arcgis api for flex 开发入门(一)环境搭建
http://www.cnblogs.com/wenjl520/archive/2009/06/02/1494514.html arcgis api for flex 开发入门(一)环境搭建arcgi ...
- Android开发使用控件入门--环境搭建
Android开发使用控件入门--环境搭建 软件名称(,梦,,想.CAD ,控件) 1. 环境搭建: 3 1.1. 安装Eclipse 3 1.2. 下载JDK 3 1.3. 下载Android S ...
- 一.JSP开发的工具下载与环境搭建
JSP技术的强势: (1)一次编写,到处运行.在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改. (2)系统的多平台支持.基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统 ...
- 行为驱动:Cucumber + Selenium + Java(一) - 环境搭建
1.1 什么是行为驱动测试 说起行为驱动,相信很多人听说过. 行为驱动开发-BDD(Behavior Driven Development)是一个诞生于2003年的软件开发理念.其关键思想在于通过与利 ...
- 跨平台开发之阿里Weex框架环境搭建(一)
转载自:http://www.cnblogs.com/fozero/p/5995122.html 一.介绍 Weex是阿里今年6月份推出的跨平台解决方案,6月底正式开源.官网 https://alib ...
随机推荐
- Java——String.split()函数
在java doc里有 String[] java.lang.String.split(String regex) Splits this string around matches of the g ...
- Oracle笔记(三)单行函数
-函数 函数像一个黑盒子一样(看不到里边的构造),有参数返回值,可以为我们完成一定的功能. -单行 这种函数会对结果中的每一行计算一次,每行返回一个结果,单行概念区别于分组函数. 单行函数主要分为以下 ...
- Merge Into example
merge into users a using temp_users b on (a.userid = b.user_id) when matched then update set a.passw ...
- Appium 提高脚本复用、可配置性
- asp:时间的显示
DateTime dt = DateTime.Now;// Label1.Text = dt.ToString();//2005-11-5 13:21:25// Label2.Text = ...
- JavaScript中事件绑定的方法总结
最近收集了一些关于JavaScript绑定事件的方法,汇总了一下,不全面,但是,希望便于以后自己查看. JavaScript中绑定事件的方法主要有三种: 1 在DOM元素中直接绑定 2 JavaScr ...
- java_集合框架
一.集合框架图 二.Collection接口 Collection中可以存储的元素间无序,可以重复的元素. Collection接口的子接口List和Set,Map不是Collecti ...
- 严重: Exception starting filter struts2 java.lang.NullPointerException (转载)
严重: Exception starting filter struts2 java.lang.NullPointerException at com.opensymphony.xwork2.util ...
- How to: Reading an ini config file from a batch file
Original Link: http://almanachackers.com/blog/2009/12/31/reading-an-ini-config-file-from-a-batch-fil ...
- sgu 101 domino
题意还算简洁明了,加上有道翻译凑过着读完了题.题意大体上是 给你 n 个多米诺骨牌, 给出每个骨牌两端的数字, 只有数字相同才可以推到, 比如 2-3和3-2.你可以旋转这些多米诺骨牌, 输出一个可以 ...