MAC上基于Parallels双虚拟机源码调试windows驱动
网上的资料都是基于virtualbox或者是vmware这种虚拟机,这种虚拟机一般都是基于虚拟串口管道通信。
1.parallels设置
被调试的机器添加一个串口,作为client
调试的机器添加一个串口,作为server端
2.被调试机器打开debug me模式
bcdedit /copy {current} /d "Debug me"
然后把第一步返回的GUID替换下面命令对应的地方
bcdedit /debug {MY_GUID} on
3.开始调试
首先打开调试机器(不是被调试的机器)
3.1 设置符号路径(ctrl s)
SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols;你的pdb所在的路径
3.2 设置源码路径
可以进行源码级别的调试。
3.4 开始内核调试
ctrl k,点击com,确定即可
然后会出现以下界面
3.5 启动被调试的机器
选择debug me
3.6 去调试方机器,会发现windbeug已经连上了
3.7 下断点
bu drivername!driverentry
3.8 windbug命令行输入g
被调试机器就会启动,启动后,加载内核模块,就会停在驱动的入口函数