【发布时间】:2010-12-03 19:23:47
【问题描述】:
我在启动时从我正在编写的驱动程序 (STOP: 0x0000007E) 中得到了一个可爱的 BSOD,并且想加载内存转储以进行分析。但是,它不会被倾倒在任何地方。在启动和恢复设置中一切都设置正确,但我没有得到转储文件,并且事件日志中没有任何内容表明已发生转储。看起来甚至没有发生转储...
我知道导致它的确切代码行(对IoAttachDevice() 的调用),但不确定原因,并想查看DbgPrint 输出以了解它到底在哪里失败。在设置转储功能之前,Windows 可能会崩溃吗?如果是这样,我如何在故障发生时访问机器的状态?
更新:其他可能有用的信息:我在 Linux 主机上通过 VirtualBox 运行 Windows XP。
【问题讨论】:
-
如果您在进行 Windows 内核编程,您需要在 Windows 主机上安装一个 Windows VM。
-
@BenVoigt 为什么不在 Linux 主机上安装 Windows VM?
-
@MilindR:你如何在你的 Linux 主机上运行 WinDbg?内核调试需要在 VM 内部和外部使用 Microsoft 工具。所以不,Linux 主机上的 Windows VM 还不够好。
-
@BenVoigt 另一个 Windows 虚拟机。连接串行端口。从我读到的关于它的内容来看,它没有什么异国情调。
标签: windows device-driver bsod