欢迎来到天天文库
浏览记录
ID:37934261
大小:485.73 KB
页数:11页
时间:2019-06-03
《Windows调试工具入门4(WinDbg内核调试配置)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Windows调试工具入门WinDbg内核调试配置WinDbg内核调试配置内核调试主要用来调试驱动代码、分析内核结构等。WinDbg通过两台电脑可以实现内核调试,其中一台电脑运行WinDbg,被称为主机;另外一台电脑运行被调试的程序或系统,被称为目标机。一般情况下两台电脑都是真实机器,这样调试最符合实际情况,两台电脑通过串口线、1394线或USB对联线连接起来实现双机内核调试。如果没有两台电脑,也可以用虚拟机来模拟目标机,主机上运行WinDbg,虚拟机中安装Windows运行被调试的程序,虚拟机通过模拟的串口输出为主机上的一个命
2、名管道,从而和主机上的WinDbg连接起来实现双机内核调试。除双机内核调试外,WindowsXP后还引入了一种本机内核调试方式,只需要一台电脑,直接运行WinDbg就能查看修改系统内核结构等,不过所有和中断目标机系统相关的命令都不能执行,如断点命令。如果采用虚拟机模拟目标机,调试响应速度有时候是个问题,比1394线连接的真实双机调试速度要慢不少,特别是执行操作大量内存的命令时(如搜索内存命令),感觉非常明星。所以针对这种情况还会介绍一个特殊的辅助调试工具vmkd,该工具可以大大加速内核调试的速度,为咱们带来不少方便。下面分节详细
3、介绍各种内核调试情景下的配置,尽量每个步骤都截图说明。真实机双机内核调试真实机之间的内核调试首先需要准备连接线,可以用串口线、1394线或者USB对联线。串口线速度太慢,而且电脑城一般买不到可以直接使用的串口线,需要把线和接头买回来自己焊,按照WinDbg帮助中的说明交叉焊接,就能得到一根可用来调试的串口线。用串口线把两台电脑连接上后,先用Windows自带的超级终端工具,选择好串口和波特率连接。如果在超级终端中按键能在另外一台电脑的超级终端上显示按键,则表示串口线连接成功。接下来就可以用WinDbg连接串口调试。某些笔记本上可
4、能没有串口,可以买一个USB转串口的接头,然后设置USB转换后的串口号,就能把这台笔记本当作主机使用。1394线速度快,价格也便宜,如果电脑上没有1394口,可以再另外买一个1394卡,价格也很便宜。1394分大口和小口,只需按照电脑上的接口大小购买合适的线就行。如果没有1394口,装一个1394卡又很麻烦,则也可以买一个USB转1394口的接头,不过一样只能当作主机使用。USB对联线是Vista系统以后支持的内核调试连接方式,没见到哪里能买到这样的线,估计速度会更快一点吧!因为1394线连接调试最方便,速度也比较快,所以建议使
5、用这种方式。电脑、连接线等准备好后,先设置目标机系统,启用内嵌在系统中的内核调试引擎。Vista之前的系统,用记事本打开系统盘根目录下的boot.ini文件,添加新的启动项,在新的启动项上添加调试选项。如下表,红色行表示新加的启动项,/debug表示打开内核调试引擎,/debugport=1394表示采用1394连接方式,/channel=10表示设置通道号为10。[bootloader]timeout=30default=multi(0)disk(0)rdisk(0)partition(1)WINDOWS[operating
6、systems]multi(0)disk(0)rdisk(0)partition(1)WINDOWS="MicrosoftWindowsXPProfessional"/noexecute=optin/fastdetectmulti(0)disk(0)rdisk(0)partition(1)WINDOWS="WINXP-Debug"/noexecute=optin/debug/debugport=1394/channel=10Vista之后的系统需要修改BCD数据库,利用bcdedit工具添加启动项,设置调试选项。如下表,以管
7、理员方式-1-Windows调试工具入门WinDbg内核调试配置运行命令行程序,先复制当前项生成新的启动项,然后在新的启动项上操作,打开内核调试、设置调试连接方式、设置1394通道号。C:>bcdedit/copy{default}/d"Vista-RemoteDebug"已将该项成功复制到{13fbbedc-756a-11dc-aed8-0016e68bceb3}。C:>bcdedit/set{13fbbedc-756a-11dc-aed8-0016e68bceb3}debugtype1394操作成功完成。C:>bcde
8、dit/set{13fbbedc-756a-11dc-aed8-0016e68bceb3}channel10操作成功完成。C:>bcdedit/debug{13fbbedc-756a-11dc-aed8-0016e68bceb3}on操作成功完成。设置完目标系
此文档下载收益归作者所有