我正在调试VirtualBox VM中的驱动程序,WinDbg通过作为命名管道暴露给主机的COM端口连接到目标。
调试工作正常 - 我可以暂停目标,设置断点,逐步执行源文件.etc
当我的驱动程序遇到致命错误时,WinDbg会将以下输出转储到控制台:
*** Fatal System Error: 0x00000050
(0xFFFFF88004126840,0x0000000000000001,0xFFFFF88003E12690,0x0000000000000000)
Driver at fault:
*** MYDRIVER.sys - Address FFFFF88003E12690 base at FFFFF88003E12000, DateStamp 51249ae5
.
Break instruction exception - code 80000003 (first chance)
A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.
A fatal system error has occurred.
Connected to Windows 7 7601 x64 target at (Wed Feb 20 09:57:54.670 2013 (UTC + 0:00)), ptr64 TRUE
Loading Kernel Symbols
...............................................................
................................................................
..............
Loading User Symbols
.....
Loading unloaded module list
.....Unable to enumerate user-mode unloaded modules, Win32 error 0n30
Loading Wow64 Symbols
..........................................................
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************
Use !analyze -v to get detailed debugging information.
BugCheck 50, {fffff88004126840, 1, fffff88003e12690, 0}
调试器命令行上的小状态框为空,调试器不响应我输入的命令。
我想查看调用堆栈并检查机器状态,但调试器仍然没有响应。按BREAK / CONTINUE似乎没有效果。
我不明白 - 此时调试器的状态是什么?
我怀疑我的整个调试设置非常非常慢。
答案 0 :(得分:0)
通过com端口调试非常慢,你必须切换到virtualkd - http://virtualkd.sysprogs.org/(它使用主机和guest虚拟机之间的共享内存,速度要快得多)。在你等待的时候不要按任何东西,它的减速过程要多一点。 一般来说com过时了,而在调试时,没有vm,都使用firewire或usb接口。