2015-10-06 69 views
0

我想内核上我客户调试应用程序 - WindowsXP的操作系统内核调试Windows客户系统,从Linux系统 - 设置不工作

我的主人是一个的Ubuntu 14.04 64与VMware安装了工作站12。

调试器客户端操作系统Windows 7与WinDBG安装。

我从VMware的阅读这篇文章: https://www.vmware.com/support/ws55/doc/ws_devices_serial_advanced_example_debugging.html

https://www.vmware.com/support/ws55/doc/ws_devices_serial_2vms.html

而且我配置我的机器,我从文章理解,但它只是不会工作。有一件事我没有真正理解,这可能是我的问题,是什么NamedPipe应该配置为? 我应该使用\\.\pipe\[NAME]语法还是/tmp/[NAME]

显然从Windows 7 - Debugger机器内部不会识别/tmp/[Name]。那么是哪一个呢?

这里是我的配置:

的WindowsXP(调试的客户机操作系统)

  1. 使用套接字(命名管道)
  2. \\。\管\ DEBUGPORT
  3. 来自:服务器收件人:A虚拟机
  4. Yie在轮询ID CPU

的bootcfg

Boot Loader Settings 
-------------------- 
timeout: 30 
default: multi(0)disk(0)rdisk(0)partition(1)\WINDOWS 

Boot Entries 
------------ 
Boot entry ID: 1 
Friendly Name: "Microsoft Windows XP Professional" 
Path:   multi(0)disk(0)rdisk(0)partition(1)\WINDOWS 
OS Load Options: /noexecute=optin /fastdetect /debug /debugport=COM1: /baudrate=115200 

Windows7中(使用WinDbg调试器)

  1. 使用套接字(命名管道)
  2. \\。\管\ DEBUGPORT
  3. 来自:客户端收件人:虚拟机
  4. 轮询时自愿放弃CPU

现在我Windows7的打开WinDBG,敲CTRL + K为KernelDebugging选项,去`COM”选项卡,配置如下:

  1. 波特率:115200
  2. 端口:\\。\管\ DEBUGPORT
  3. 管[选中]
  4. 重新连接[选中]

现在重新在没什么Guest XP OS结果..我不我WinDBG的客户 上得到什么我失去了什么?我的端口命名惯例是错误的,因为即时通讯使用Linux主机?

+0

我不确定,但会猜测管道将是一个文件访问宿主系统上的两个vms。所以在你的情况/ tmp/... – fassl

回答

2

我可以在这里看到的几个问题

  1. 使用linux格式的管道/套接字 -/tmp /,例如/ tmp/dbg,如果你的主机操作系统是linux
  2. 在windbg(调试器系统)中,只需提到端口的名称,即COM1,而不是全部管道名称(在主机操作系统本身上调试时使用,而不是(视窗跨虚拟机)
  3. 在WinDbg中(调试器系统),取消管道
  4. 此外,“轮询时自愿放弃CPU”不需要调试选项7,在这里)

我能够连接windbg在Ubuntu 7上的Windows 7虚拟机(一个调试器&另一个调试对象)14.04 &工作站11.1.3

+0

是的这是正确的。干杯! –

0

已安装的运行Linux操作系统 的一些味道,如果是这种情况,你更喜欢使用命名管道一台物理主机内的两个不同的虚拟机两个窗口操作系统

1) edit the boot.ini in xp (no bcdsettings available in xp guest) 
2) add a serial port on both the virtual machines 
3) use named pipe \\.\pipe\com_1 on both virtual machines 
4) assign one end as server and other end as virtual machine in first vm 
5) assign one end as client and other end as virtual machine in second vm 
6) restart 

这个link一些花哨的废话,但你可以参考图像
http://www.woodmann.com/forum/entry.php?234-connect-two-virtual-machines-on-one-physical-host-and-use-wdeb386-to-debug-win98-app

+0

对不起,延迟,但这是行不通的 可能有问题,因为即时通讯使用'Win-xp SP2'而不是SP3? –

+0

**它不工作意味着==模糊描述或否问题描述**没有概念os如果您检查链接的文章图像,应该没有关系,您可能会注意到运行在那里的虚拟机在物理主机上有windows98,理论上物理主机应该能够运行虚拟机,并且虚拟机必须能够运行任何操作系统,并且如果它们在物理世界中可以连接,则它们应该可以在虚拟世界中连接 – blabb