硬件错误和错误源
硬件错误 是计算机系统中硬件组件发生故障的一种情况。 硬件组件包含错误检测机制,这些机制可以检测硬件错误条件何时存在。 硬件错误可以归类为 更正的错误,或 未更正的错误。
硬件更正错误是指在操作系统被通知存在错误条件之前,硬件或固件已经更正的硬件错误。
未更正的错误是硬件或固件无法更正的硬件错误条件。 未更正的错误被归类为 致命 或 非致命。
- 致命的硬件错误是硬件被确定为无法恢复的未更正或未包含的错误状态。 发生致命的未更正错误时,操作系统会生成一个错误检查用于处理错误。
- 非致命硬件错误是一种未更正的错误条件,操作系统可以通过尝试纠正该错误来尝试恢复。 如果操作系统无法更正错误,它将生成一个错误检查来控制错误。
硬件 错误源 的概念是 Windows 硬件错误体系结构(WHEA)的基本概念。 硬件错误源是任何向操作系统发出警报以指示存在错误条件的硬件设备。 硬件错误源的示例包括以下情形:
处理器机器检查异常(例如 MC#)
芯片集错误信号(例如 SCI、SMI、SERR#、MCERR#)
I/O 总线错误报告(例如,PCI Express 根端口错误中断)
I/O 设备错误
单个硬件错误源可能会处理多个硬件错误条件类型的错误报告。 例如,处理器的计算机检查异常通常报告处理器错误、缓存和内存错误以及系统总线错误。
注意
系统管理中断(SMI)由固件处理,而不是由操作系统处理。
硬件错误源通常表现为:
一个或多个硬件错误状态寄存器
一个或多个硬件错误配置或控制寄存器
一种用于发出信号的机制,提醒操作系统硬件错误状态的存在
在某些情况下,没有显式信号机制,操作系统必须轮询错误状态寄存器以测试错误条件。 但是,轮询只能用于已更正的错误情况,因为未更正的错误需要操作系统立即处理。
从 Windows Vista 开始,操作系统会维护可在特定硬件平台上发现的所有硬件错误源的列表。 当操作系统开始确定特定系统上存在哪些硬件错误源时,WHEA 使用发现机制。 根据不同的平台,公开此信息给操作系统的方法各不相同。 操作系统从 ACPI 表、固件交互和其他特定于平台的机制的组合中收集此信息。
注意
Windows Vista 不会从 ACPI 表收集硬件错误源信息。 但是,从 Windows Server 2008 和 Windows Vista SP1 开始,操作系统使用 ACPI 表收集硬件错误源信息。