如何从无信息的 Windows 8 BSOD 中获取更多信息?

如何从无信息的 Windows 8 BSOD 中获取更多信息?

Windows 8 的蓝屏死机与以前的 Windows 版本不同:

Windows 8 蓝屏

为了找出问题的原因,您需要记下或记住它提供的搜索词。到目前为止,我看到建议的两个搜索词是
SYSTEM_SERVICE_EXCEPTIONHAL_INITIALIZATION_FAILED

虽然不必看着满是文本的蓝屏真是太好了,但是之前的 BSOD 比 Windows 8 BSOD 更具信息量,因为它包含详细的错误代码(在操作系统执行错误检查时收集的用于诊断目的的信息),这可以让您更接近追踪问题的根源。

如何获取有关 Windows 8 遇到的错误的更多信息,以便找到问题的根源?

答案1

忽略典型的 BSOD 名称,这些更正式地称为 Bug 检查。为了查找某个 BSOD 代码实际上方法你可以查找Bug 检查代码参考

错误检查0x3B: SYSTEM_SERVICE_EXCEPTION0x5C: HAL_INITIALIZATION_FAILED听起来很熟悉,你可以在那里阅读它们,但我会详细说明那些对于那些不进行调试或低级驱动程序编程的人来说可能不清楚的事情。

SYSTEM_SERVICE_EXCEPTION

页面上的描述是:

这表明在执行从非特权代码转换到特权代码的例程时发生了异常。

当系统上的某些代码尝试执行具有更高权限的其他代码时,就会发生这种情况。无海拔特权意味着非特权代码会破坏安全性。这通常是故障驱动程序所为,但也可能是以驱动程序形式出现的 rootkit,它会触及某种形式的保护。

这并不意味着我们应该排除其他可能的错误,例如内存损坏,可以通过调查崩溃转储来查看该行为是指向驱动程序还是更随机。即使崩溃转储是随机的,也不一定指向坏内存,但可能是驱动程序损坏内存的结果。因此,进行内存测试很方便,可以检查是否存在坏内存,以便更清楚地了解我们是否走上了这条路。

初始化失败

页面上的描述是:

这表明 HAL 初始化失败。

是的,她就说了这些。研究哈尔下一步就是理解这里发生了什么,简而言之,“在操作系统中”部分的这一部分有助于:

硬件抽象层 (HAL) 是用软件实现的抽象层,位于计算机的物理硬件和在该计算机上运行的软件之间。其功能是隐藏大部分操作系统内核中的硬件差异,这样大部分内核模式代码就无需更改即可在具有不同硬件的系统上运行。

在 PC 上,HAL 基本上可以被视为主板的驱动程序,并允许来自高级计算机语言的指令与低级组件进行通信,例如直接与硬件进行通信。

是的,它仍然很长。但它指出了一些更有趣的可能原因:硬件故障、抽象代码、主板/芯片组驱动程序或其他驱动程序。通过反向浏览这些可能的原因,我们可以逐级查看问题可能出在哪里;为此,我们需要再次检查崩溃转储。

检查崩溃转储?!

正如评论中指出的那样,您可以访问此网址了解一些基本说明,但我建议尽可能上传转储,以便我们为您检查。我通常使用 Windows 调试工具中的 WinDBG 来执行此操作。或者,您可以使用在线即时在线崩溃转储分析器来自 OSR Online,尽管这不允许您进一步检查崩溃转储的一般分析。因此,一旦您获得了崩溃转储,请告诉我们...

答案2

您可以在事件查看器中看到与旧蓝屏上相同的信息。系统日志,事件 ID 1001

http://msdn.microsoft.com/en-us/library/ff559069(v=vs.85).aspx

答案3

您还可以摆脱新的消息 :-( 蓝屏并恢复旧的错误检查屏幕,如 XP 和 W7。

首先确保KB2929742已安装。

然后在 Windows 中打开注册表编辑器并编辑此项

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CrashControl

创建一个新的 Dword“DisplayParameters”并将其设置为 1。

将“自动重启”设置为 0

重新启动 PC 以使更改生效。下次出现 BSOD 时,它会在蓝屏上显示更多信息,并停留在 bsod 屏幕上,直到您强制关机。

相关内容