由于从公司辞职了,所以以前在公司里搭建的驱动开发环境也就 Game Over 了,

同样由于那环境是很久以前搭建的,自己也有很多记不清楚的地方了,

而且其中还是有很多需要注意的地方的,所以在这里顺便做一个环境搭建的总结,

以后再要用的时候也会很方便的。

WDK 调试环境搭建:

安装 WDK:

自然首先是安装 WDK 了,这个好办,直接到官网上下载,然后安装就 OK 了,

注意的是,在安装中最好是选择安装全部,并且最好是安装在 盘下。

设置调试环境:

这个其实也好办,就是使用 WinDbg 来调试虚拟机或者通过串口线可以使用 WinDbg 来调试另外一台 PC 。

其中呢,如果你机器还算好,可以同时跑的起几个 Visual Studio + 虚拟机的话,那就没必要使用 台 PC 

但是如果你机器不咋的的话,像我自己家里的这种几年前的古董,跑个虚拟机就卡的跟什么似的的话,

那最好是准备 台 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 的话,至少得准备 台 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 环境搭建的更多相关文章

  1. windows phone 8 开发系列(一)环境搭建

    一:前奏说明 本人一名普通的neter,对新玩意有点小兴趣,之前wp7出来的时候,折腾学习过点wp7开发,后来也没怎么用到(主要对微软抛弃wp7的行为比较不爽),现在wp8已经出来一段时间了,市场上也 ...

  2. 【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 ...

  3. Windows7下驱动开发与调试体系构建——0.概述

    本文集内容为windows7x64下驱动开发与调试体系构建,内容目录如下: 1.驱动开发的环境准备 2.R3与R0的通信示例 3.自建调试体系概述 4.在x64下使用汇编代码 5.实战反调试标记位(N ...

  4. 最简单的SVN环境搭建过程

    本文简单描述最简单的SVN环境搭建过程 搭建环境:windows (个人验证了windows2003,windows xp) 使用软件:Setup-Subversion-1.6.17  //Serve ...

  5. arcgis api for flex 开发入门(一)环境搭建

    http://www.cnblogs.com/wenjl520/archive/2009/06/02/1494514.html arcgis api for flex 开发入门(一)环境搭建arcgi ...

  6. Android开发使用控件入门--环境搭建

    Android开发使用控件入门--环境搭建 软件名称(,梦,,想.CAD  ,控件) 1. 环境搭建: 3 1.1. 安装Eclipse 3 1.2. 下载JDK 3 1.3. 下载Android S ...

  7. 一.JSP开发的工具下载与环境搭建

    JSP技术的强势: (1)一次编写,到处运行.在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改. (2)系统的多平台支持.基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统 ...

  8. 行为驱动:Cucumber + Selenium + Java(一) - 环境搭建

    1.1 什么是行为驱动测试 说起行为驱动,相信很多人听说过. 行为驱动开发-BDD(Behavior Driven Development)是一个诞生于2003年的软件开发理念.其关键思想在于通过与利 ...

  9. 跨平台开发之阿里Weex框架环境搭建(一)

    转载自:http://www.cnblogs.com/fozero/p/5995122.html 一.介绍 Weex是阿里今年6月份推出的跨平台解决方案,6月底正式开源.官网 https://alib ...

随机推荐

  1. sql 复习

    创建表 #设置外键 create table example3(id int primary key, stu_id int, course_id int, constraint c_fk forei ...

  2. 异步请求---Get

    前端 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> &l ...

  3. python输出1到100之和的几种方法

    1. 使用内建函数range print sum(range(1,101)) 2. 使用函数reduce print reduce(lambda a,b:a+b,range(1,101)) 3. 使用 ...

  4. NOIP200701

    题是这样的: 试题描述 某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金.期末,每个学生都有3门课的成绩:语文.数学.英语.先按总分从高到低排序,如果两个同学总分相同,再 ...

  5. 2016/7/7 自定义函数copy

    题目:输入整数n(n<=10000),表示接下来将会输入n个实数,将这n个实数存入数组a中.请定义一个数组拷贝函数将数组a中的n个数拷贝到数组b中. 分析: (1)输入n,再输入n个实数存入数组 ...

  6. ssh连接失败解决方法

    执行如下命令: ssh-keygen -t dsa -P '' -f /etc/ssh/ssh_host_dsa_key ssh-keygen -t rsa -P '' -f /etc/ssh/ssh ...

  7. memcached全面剖析--5

    memcached的应用和兼容程序 mixi案例研究 mixi在提供服务的初期阶段就使用了memcached. 随着网站访问量的急剧增加,单纯为数据库添加slave已无法满足需要,因此引入了memca ...

  8. iOS之多线程浅谈

    1)并发和并行的区别 在软件开发中不可避免的会遇到多线程的问题,在iOS客户端开发(或者.NET的winform或者wpf这样的cs程序)中就更不可避免的会用到多线程,在bs类型的web项目中要考虑一 ...

  9. Super Hide IP 3.4.7.8允许您以匿名方式进行网上冲浪、 保持隐藏您的 IP 地址

    Super Hide IP 3.4.7.8 转自:http://www.0daydown.com/04/695.html Super Hide IP允许您以匿名方式进行网上冲浪. 保持隐藏您的 IP ...

  10. Appdelegate 导航操作

    隐藏返回按钮 self.navigationItem.hidesBackButton = YES; 设置导航的透明度 self.navigationController.navigationBar.t ...