大多数 Windows 用户都希望永远不要看到蓝屏死机(BSOD),因为这通常表示由错误驱动程序、硬件问题、恶意软件、Windows 安装失败和其他电脑故障引起的严重系统故障。不过,你也可以利用 BSOD 机制来达到更好的目的,只要确保操作正确即可。
Windows 爱好者们都熟悉一种可触发用户主动蓝屏死机的键盘快捷键:按住 Ctrl 键并按滚动锁定键(Scroll Lock)两次。很快系统就会崩溃了,所有未保存的数据都不见了。有了这个快捷键,开发人员就可以查看他们的软件在系统崩溃时的表现,并收集转储文件,以便进一步改进和开发。
一些开发人员认为敲击键盘太费事,于是他们尝试编写一个简单的应用程序,通过注入"魔法键"来自动完成敲击键盘的过程。微软的资深人士 Raymond Chen 在一篇博文中解释了为什么这样做行不通。主要原因是键盘驱动程序在输入堆栈中识别物理输入的级别要低得多,系统崩溃时使用软件注入键盘序列在输入链中的位置太高。
当需要自动测试时,按两个键可能确实太累了。幸运的是,那些有需要的人并没有被忘记。微软有一个名为NotMyFault的便捷工具(SysInternals 软件套件的一部分),可以触发不同的崩溃、挂起或泄漏。你可以用它来测试堆栈崩溃、缓冲区溢出、高 IRQL 故障等。
Raymond Chen 还警告说,不要采用杀死winlogon.exe 等怪招,因为这样做会造成混乱,并报告不存在的漏洞。
您可以在Raymond的"The Old New Thing"博客上阅读更多有关如何正确崩溃 Windows 的信息。