好久没有重新弄系统了,换了台笔记本需要重新搭建一堆的开发环境。之前逐渐做的设置很多都不记得了。
这里对windbg和vmware双机调试环境搭建做一个简单的备忘
这里vmware里目标系统是winxp,win7的设置是不一样的。
1.设置windbg的符号路径,File -> symbol File Path 然后填入.;C:\Windows\symbols;SRV*C:\mysymbols*http://msdl.microsoft.com/download/symbols,这样windbg在找不到符号表的时候回去symstore对应的符号表
2.设置vmware,给目标虚拟机添加串口,选择Output to named pipe创建串口,默认"\\.\pipe\com_1"
3.对新添加的串口进行设置
3.1 设置"the other end is an application"
3.2 选上Yield CPU on pull
4.修改目标系统winxp里的boot.ini文件(win7 设置不同),添加启动选项
一般就从boot.ini文件中,启动项复制一份来修改,在后面加上调试参数/debug /debugport=com1 /baudrate=115200
修改成类似:
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional Debug" /noexecute=optin /fastdetect /debug /debugport=com1 /baudrate=115200
这里/debug表示需要启用内核调试, /debugport=com1使用串口1,/baudrate=115200串口使用的波特率是115200
【需要注意的是】:
a) /debugport=com1
有可能你的vmware添加新串口以后,目标系统(这里是winxp)识别到的不是com1,你需要在目标系统里用设备管理器查看具体串口号,
例如目标系统可能识别新串口为com2, 这时候你就需要修改参数为/debugport=com2
b) /baudrate=115200
这里的值需要和windbg的调试参数的波特率设置一致。
5.设置windbg的运行参数
5.1 生成一个快捷方式,修改快捷方式中windbug的执行参数,在windbg.exe的路径后添加 -b -k com:port=\\.\pipe\com_1,baud=115200,pipe,然后点选确定。
5.2 修改快捷方式名,windbg_kernel方便区分本机调试和vmware双机调试的windbg的快捷方式
6.启动目标系统后,打开之前创建的那个快捷方式,应该就能够连上了。
win7设置参见:http://www.cnblogs.com/BiffoLee/archive/2012/02/01/2334089.html