通过Windbg利用VMware虚拟机进行双机调试

  • 看《Windows核心编程》总是想把每一个细节都搞明白,所以调试内核是必不可少的,
    不想使用Win7下的本地内核调试。索性拿出《寒江独钓》配置一下虚拟机,双机调试XP系统吧。WinDbg毕竟是微软支持的调试器,虽然OllyDbg也非常优秀,但是调试内核以及系统机制,
    还是一点点学习WinDbg的使用吧。  www.2cto.com  1.在VMware下安装纯净Win XP操作系统。2.下载符合操作系统版本的WinDbg(http://msdn.microsoft.com/en-us/windows/hardware/
    gg463009.aspx),进行安装。3.设置虚拟机操作系统boot.ini文件,boot.ini文件是隐藏属性,需要设置一下文件夹选项。
    使用记事本打开后,在后面编辑,填入如下内容。(Win7系统设置请Google)multi(0)disk(0)rdisk(0)partition(1)/WINDOWS="Microsoft Windows XP Professional Debug" /noexecute=optin /fastdetect /debug /debugport=com1 /baudrate=115200
     4.设置虚拟机的管道虚拟串口1).运行 VMware ,点击"Edit virtual machine settings"2).点击"Add"运行VMware的Hardware Wizard3).选择"Serial Port",点"下一步"4).选择"Output to named pipe",点"下一步"5).保持第一框里默认的"//./pipe/com_1"6).第二框里选"This end is the server."(不同VMware默认选项不同)7).第三框里选"The other end is an application." 8).勾选"Connect at power on"        5.设置WinDbg,建立桌面快捷方式,在查看属性中的目标项后添加如下运行参数。
    将此快捷方式命名为VMWinDbg用于双机调试。  www.2cto.com  C:/windbg/windbg.exe -b -k com:port=//./pipe/com_1,baud=115200,pipe
     完成上述步骤,基本的设置就完成了,设置符号表就不赘述了,现在只需要在虚拟机系统启动时,
    选择启动调试程序。 
     在主机开启VMWinDbg,就能发现通过虚拟串口已经跟虚拟机系统连接上,能够进行内核调试了。 
     PS:如果还是无法调试,可以正常启动虚拟机(非调试),在设备管理器,对COM1串口进行
    “每秒位数项”的设置,设置为115200。 

      作者 revfish

     

  • 点这里复制本页地址发送给您QQ/MSN上的好友
  • 300*300广告