MAC 系统下使用vmwarefusion 双虚拟机调试windows驱动

在windows 下使用vmware 调试驱动时,目标虚拟机添加com口时要选择
this end is a server
the other end is application.
对于双虚拟机调试时,目标虚拟机仍然 is a server. server 的意思大概是指目标虚拟机是一台server 等待远程的调试器发起连接。因此 双虚拟机调试时,运行windbg的虚拟机 的com 口要配置成 this end is a client.
也就是两台虚拟机都要添加com口,一个是server(被调试的目标机),一个是client
但是vmware fusion 在ui上不提供添加这种com口的途径,因此要通过修改 .vmx配置文件的方式。
在被调试的目标机的配置文件中添加如下
serial0.present = “TRUE”
serial0.fileType = “pipe”
serial0.yieldOnMsrRead = “TRUE”
serial0.startConnected = “TRUE”
serial0.fileName = “/tmp/dev_com”

在调试机的配置文件中添加如下:
serial1.present = “TRUE”
serial1.fileType = “pipe”
serial1.yieldOnMsrRead = “TRUE”
serial1.startConnected = “TRUE”
serial1.fileName = “/tmp/dev_com”
serial1.pipe.endPoint = “client”

这里 serial 后面的数字,0 代表是com1 ,1代表com2 一次类推。因此,配置目标机时,记得选择com1口作为调试端口。

调试时
1 启动调试机上的windbg 选择 file->kernel debug 然后选择com2口,同时选中, reconnect 。
2 重启被调试的目标机,然后windbg 就会连上了,
这种方式的问题时,每次调试都要重启目标机,没有在windows上随时都可以用windbg连接目标机那么方便。

你可能感兴趣的:(MAC 系统下使用vmwarefusion 双虚拟机调试windows驱动)