哪种固件/硬件机制可以强制关机?


41

尽管我不确定这一点,但我很确定,按住所有计算机上的电源按钮将迫使它们在经过不同的时间后关闭。如果计算机死机或某些其他错误需要完全重启,则此功能特别有用。

我感兴趣的是这种强制关机机制是否已硬编码到底层固件的计算机中?或是否将其内置到计算机的硬件级别。如果该机制是固件,则可以合理地假设CPU级别的错误将阻止该机制正确触发,这使我相信这是硬件功能。

总结一下:通用(我假设)强制关闭机制是否内置在硬件或固件级别?有人可以详细说明机制的性质,变体和一般历史。


7
@EJP错误。见我的回答:)
DavidPostill

2
在我使用过的一些自定义设备上,它们还具有一个软电源按钮并且由电池供电(使用户难以进行硬电源循环),我们明确添加了单独的微控制器或计时器+逻辑电路(或专用部分)在FPGA上进行处理)以在固件足够复杂时处理电源,如果存在固件错误将其锁定,则可以硬关闭电源。
Jason C

4
大多数带有“ all”的陈述都是错误的。
圣保罗Ebermann

2
如果所有其他方法均失败,则还有另一种完全硬件备份的解决方案,该解决方案的背面是带有3针连接器的黑色粗线,将其删除也会强制关机。
达伦·H

3
@DarrenH不在带不可拆卸电池的笔记本电脑上。弄平电池可以工作,但是我的电池有10个小时以上的使用寿命(例如)
Chris H

Answers:


45

通用强制关机机制是内置在硬件还是固件级别的?

此过程涉及主板(硬件)和BIOS(固件)。

电源的实际切换(打开和关闭)由主板上的电路完成。通过电路中两点的瞬时短路来触发电路以更改状态。这是通过前面板按钮完成的。该按钮的短期连接就足够了。主板电路还具有第二和第三功能。

通常将BIOS设置为:如果电路已经处于ON状态并且瞬时触点保持闭合至少4秒钟,则将执行以下两项操作之一。系统将立即关闭(例如关闭开关),或者主板将进入“睡眠”状态并等待重新唤醒。您可以在BIOS设置程序屏幕中设置这两个选项中的哪个。**

这就是主板在大多数操作情况下永远不会完全“关闭”的原因。即使将其设置为“关”,也只有一小部分专门用于检查来自几个来源(例如前按钮,一些USB设备甚至是调制解调器)的输入,以便它可以通过打开电源来响应。整个系统。真正关闭所有电源的方法是拔出电源线,或使用安装在PSU背面的物理开关将其关闭。

来源电源按钮如何工作?


现代交换机不包含任何魔术。实际上,它们是 不太复杂并且比打开/关闭开关真实物理昂贵。

这些开关只是微控制器的输入。微控制器可以告知您何时按下按钮,其余的信息已通过固件中的策略编码来决定如何处理。电源通常通过晶体管进行切换。这意味着按钮本身不必承受高压或高电流,因此有很多选择可以制造且尺寸较小。例如,它可能是薄膜开关,您将永远不会用它来切换墙壁电源。

这确实意味着通常会打开设备的至少一部分电源,至少足以为微控制器供电。但是,现代微控制器在等待开关信号之前什么也不做,而这种功率在大多数情况下是无关紧要的,因此它可以消耗极少的功率。

在某些情况下,按下按钮实际上会使微型计算机上电,然后打开某些晶体管或继电器或其他东西以保持电源接通。当您按下按钮以关闭设备时,微型计算机会关闭所有设备,包括其自身。

来源设备上的这些现代电源按钮如何工作,Olin Lathrop回答


1
需要澄清的是,电源按钮是否像大多数BIOS代码一样由主CPU直接处理,或者处理电源按钮的固件是否像答案的第二部分那样在微控制器上运行?
slebetman'4

3
我相信两者都是:按下按钮会为CPU生成一个ACPI事件,但是还有一个非主CPU对其进行监视,以实现真正的强制关机(如果按住该按钮而没有CPU的响应)。否则,您可能会遇到中断中断且禁用ACPI且无法强制关闭的情况。
pjc50

6

是否在硬件或固件级别上内置了通用(我假设)强制关闭机制?

在不查找参考的情况下,这里有一个非常简单的逻辑:它们必须在硬件级别工作,因为它们在插槽中没有CPU的情况下工作。

当然,PC不会做那么多事情,但是您仍然可以从技术上打开它的电源。如果您的主板有能力向您发送消息(通过蜂鸣声或小的2位数字代码),则您可能会得到“ CPU坏/没有CPU”的代码。您也可以通过长按关闭电源,这是此处的重要部分。

此外,请记住,在所有系统处于非常不健全的状态的情况下(例如,在单用户模式下/ linux kernel panic / BSOD等),并且出于所有意图和目的,该功能将处于死胡同。按钮仍然有效(至少长按)。

注意,“硬件级别”已经是一个相当宽泛的术语。例如,大多数人很容易就能找到从几个晶体管到一个小型专用µC以及周围一些NVRAM的东西(这将使BIOS配置的值保持不变,例如关于短按的行为)。仍称为“硬件”。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.