Windbg驱动双机调试环境配置
[由于进入了Windows驱动编程领域第一步就是搭建环境,整个环境来说说难也不难,只是比较麻烦。文章有些地方比较繁琐的,而且别人写的比较好,作为引用参考直接贴连接了。如果你按照我写的一步步完成,很快就可以使用Windbg进行双机调试了]
[准备工作]
1:WDK7.1,由于是做Windows Xp下的驱动开发,只能用WDK,如果是WDK8以上的,应该没有这么麻烦。
2:VM虚拟机,并且有XP原版镜像,这个都可以网上下载的。
3:VS2012以上的版本,完全安装好
4:Windbg调试工具
[操作步骤]
一、我们先搭建虚拟机与物理机的通信、调试。
1.安装好虚拟机以及安装好Windows xp操作系统,这个过程很简单,我没有必要说了
2.设置虚拟机与调试机的命名管道通信。
在虚拟机设置里面增加串口串行端口,名字是\\.\pipe\com_1
名字是可以自己取的,后面对应好就行了。注意这里是串行端口2!
3.设置XP调试模式
打开虚拟机进入桌面,“我的电脑”右键->属性->高级->启动恢复设置->编辑,打开boot.ini,也就是一个记事本,里面增加一行
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional Debug" /fastdetect /debugport=com2/baudrate=115200
这里设置后以后,最好选择默认进入调试模式
二、设置Windbg与被调试机的通信
1.下载windbg
在微软官网去下载,microsoft是有专门下载的
2.安装好之后在桌面创建快捷方式,指向windbg.exe
3.修改快捷方式的名字,完成和被调试机的通信。
"C:\Program Files (x86)\Debugging Tools for Windows (x86)\windbg.exe" -b -k com:pipe,port=\\.\pipe\com_1,resets=0
三、加载符号表
这个在windbg中,对symbol path设置,设置成由网上缓存到本地
cache*c:\mysymbol;srv*http://msdl.microsoft.com/download/symbols;
四、成功后的图
五、对VS2012设置,VS作为写代码的工具
具体设置我直接贴链接:http://bbs.pediy.com/showthread.php?t=193020
http://blog.csdn.net/augusdi/article/details/9005121
六、这是最后一步了
VS2012对sys的编译很不好的,经过第五步你可能还是无法编译,很正常,你可以用wdk自带的编译cmd来编译,以后就在vs2012里面写代码,然后用wdk自带的编译器编译成功
具体的设置链接:http://jingyan.baidu.com/article/eae078278528c21fed548551.html
编译出来的文件,sys文件就是我们需要的驱动文件。
[相关文章]
Windbg驱动双机调试环境配置的更多相关文章
- Windbg+VirtualBox双机调试环境配置(XP/Win7/Win10)
一.下载WDK10 https://developer.microsoft.com/zh-cn/windows/hardware/windows-driver-kit 安装Windows驱动程序工具包 ...
- Windbg双机调试环境配置(Windows7/Windows XP+VirtualBox/VMware+WDK7600)
简介:Windbg双机调试内核.驱动 下载软件: 下载Windbg(GRMWDK_EN_7600_1.ISO) 下载VirtualBox 5.2/VMware 12 一.安装WDK,这里要提一点的是D ...
- VS 2013驱动开发 + Windbg + VM双机调试(亲测+详解)
------------VS 2013驱动开发 + Windbg + VM双机调试(亲测+详解)------------- WIN10已上线,随之而来的是VS2015:微软在 "WDK760 ...
- Windebug双机调试环境搭建
Windebug双机调试环境搭建 开始进行内核编程/驱动编程的调试工作是非常烦人的,由于程序运行与内核层不受操作系统的管控,所以容易引起主机蓝屏和崩溃是常有的事.这也就使得内核程序的调试成了一大 ...
- [内核编程] Windebug双机调试环境搭建
Windebug双机调试环境搭建 开始进行内核编程/驱动编程的调试工作是非常烦人的,由于程序运行与内核层不受操作系统的管控,所以容易引起主机蓝屏和崩溃是常有的事.这也就使得内核程序的调试成了一大 ...
- [01] HEVD 双机调试环境搭建
[01] HEVD 双机调试环境搭建 span::selection, .CodeMirror-line > span > span::selection { background: #d ...
- MacOs/Liunx主机搭建windows平台双机调试环境
0x00 前言 本文的主要试用对象是Mac OS/Linux用户,对于想调试windows内核相关的一些东西时,需要搭建双机调试环境的一些记录.另外对于本机是windows的用户也完全试用,windo ...
- linux--->lnmp环境调试环境配置
lnmp环境调试环境配置 nginx是一个web服务器,因此nginx的access日志只有对访问页面的记录,不会有php 的 error log信息. nginx把对php的请求发给php-fpm ...
- windows7内核驱动开发试验环境配置
首先配置环境参照这个: http://blog.csdn.net/qing666888/article/details/50858272 然后在win10里可能由于没有做测试签名因此一直没有成功加载驱 ...
随机推荐
- day08 学习小测试 九九乘法表 车牌划分计算 大文件读取操作
1.1需求:读取一个100G的文件,检测文件中是否有关键字keys=['苍老师','小泽老师',"alex"], 如果有则替换成"***",并写入到另一个文件中 ...
- 《Linux内核原理与分析》第七周作业
课本:第六章 进程的描述和进程的创建 操作系统内核实现操作系统的三大管理功能 进程管理 内存管理 文件系统 在操作系统原理中,通过进程控制块PCB描述进程:在Linux内核中,通过一个数据结构stru ...
- java栈的实现复习
栈是一种线性表,仅限在一端进行插入和删除操作,特点是先进后出. 由于栈是一种线性结构,首先可以想到用数组来实现,但由于数组初始化后容量就已经确定,如果不添加扩容操作,则会出现栈溢出,同时扩容操作也会降 ...
- linux服务器架设--学习笔记
PS: Centos是属于红帽子的操作系统
- 在windows上使用ssh秘钥连接git服务器
git部署在centos7上 安装好git后,新建一个用户test(注意要加入git用户组)配置ssh秘钥登录,我的另一篇博客有写配置步骤 重点的地方是在windows系统上使用秘钥登录git服务器 ...
- 18.3 #define DM9000_DBG(fmt,args...) printf(fmt, ##args)代表什么
标准C支持可变参数的函数,意味着函数的参数是不固定的,例如printf()函数的原型为:int printf( const char *format [, argument]... ) 而在GNU C ...
- 第一章 C#入门 (Windows窗体应用程序)(三)
[案例] 编写一个Windows窗体应用程序,窗体上有一个文本框和两个按钮([显示]和[清除]按钮). 单击[显示]时,文本框的背景变为蓝色并且居中显示“努力学习C#”: 单击[清除]按钮,文本框的背 ...
- redis 双写一致性 看一篇成高手系列1
首先,缓存由于其高并发和高性能的特性,已经在项目中被广泛使用.在读取缓存方面,大家没啥疑问,都是按照下图的流程来进行业务操作. 但是在更新缓存方面,对于更新完数据库,是更新缓存呢,还是删除缓存.又或者 ...
- 关于各种BUF源语的研究
关于各种BUF源语的研究 资料来源: 单端信号需要用到的BUF 关于这些源语的约束: 增大驱动电流 关于管脚的上拉与下拉约束: ODDR的两种操作模式 关于ODDR输出时钟的应用 为什么ODDR需要这 ...
- ADS1.2和JlinkV8 erro starting external process,Process error code 87(0x57)参数错误
ADS1.2和JlinkV8 erro starting external process,Process error code 87(0x57)参数错误 网上的大致说法是说这个跟W7有关 说是将I ...