win7(64)位下WinDbg64调试VMware10下的win7(32位)
一 Windbg32位还是64位的选择
参考文档《Windbg 32位版本和64位版本的选择 》
http://blog.csdn.net/ithzhang/article/details/13096113
“运行调试器的计算机我们成为调试主机,被调试的计算机我们称为目标机。”
“如果你的调试主机运行的是32位版本的windows,使用32位的调试工具(不管此时被调试的目标机是 x86-based 还是 x64-based)”
根据这两句话,我的调试主机是64位的,所以运行的是64位的windbg。
二.虚拟32位win7的配置
1 设置 VMware 的虚拟com
参考文档《VMware + WinDbg 配置内核调试》
http://www.cppblog.com/tiany/archive/2012/03/03/167024.aspx
这里注意。我在后来也会遇到winbdg无法连接的原因,参考一下文档可以解决:《Win7 sp1 (x86) + Windbg +VMWare 8 :双机调试无法连接》
http://zhanyonhu.blog.163.com/blog/static/16186044201197115346289/
依据这句话 很重要
“serial port 2导致的。删除serial port 2和Printer打印机,再重新添加一个serial port,即可。”解决。
2 设置 VMware中虚拟机win7 debug调试模式
参考文档《Windbg+VMware双机调试Windows 7内核》
http://blog.163.com/yandong_8212/blog/static/13215391420106291126384/
“win7下面没有了boot.ini,用bcdedit.exe命令行来配置(和以往唯一的区别)”
三.Windbg连接win7
外层的系统,在cmd下windbg安装目录下,运行
虚拟机停止运行后 按g即可
建立快捷方式 参考文档《用快捷方式启动带参数的程序(例如Windbg)》
http://www.cnblogs.com/oyjj/archive/2010/01/12/2132959.html
最后 恭喜你大功告成!
ps注意: 1 虚拟机下的win7是debug模式;2 前面说的serial port 2问题.