三重故障不会使系统复位

问题描述 投票:0回答:1

尝试在我的基于 x86 的平台(Intel Cherry Trail x5 Z-8350)上通过三重故障发出平台重置,但平台只是挂起。我在 qemu 上看到了预期的行为 - 系统在三重故障时重新启动。

三重故障是常见的架构还是仅在某些微架构上可用的特定微架构?是否有一个 CPU 设置可以防止我的平台因三重故障而重置?

x86 x86-64 intel hardware
1个回答
0
投票

三重故障将使处理器进入关闭模式,这与执行

hlt
后的状态类似,但会发出一个特殊的总线周期来通知硬件。

所以要由外部硬件来重置CPU。引用Intel SDM对Double Fault中断的描述:

如果在尝试调用双错误处理程序时发生另一个贡献异常或页面错误异常,则 处理器进入关机模式。此模式类似于执行 HLT 指令后的状态。
在这个 模式下,处理器停止执行指令,直到 NMI 中断、SMI 中断、硬件复位或 INIT# 被触发。 已收到。处理器生成一个特殊的总线周期来指示它已进入关闭模式。
软件 设计人员可能需要了解硬件进入关断模式时的响应。例如,硬 软件可以打开前面板上的指示灯,生成NMI中断来记录诊断信息, 调用重置初始化、生成 INIT 初始化或生成 SMI。

如果期间有任何事件待处理 shutdown,它们将在处理关闭唤醒事件后处理(例如,A20M#中断)。

如果在处理器执行 NMI 中断处理程序时发生关闭,则只能进行硬件复位 重新启动处理器。同样,如果在SMM中执行时发生关闭,则必须使用硬件复位来 重新启动处理器。

一般情况下,由于最后一段,会执行硬件重置,但是 Intel Cherry Trail x5 Z-8350 是一款适用于移动设备的低功耗 SoC,可能存在一些缺陷。

© www.soinside.com 2019 - 2024. All rights reserved.