当前位置:首页 > 投稿 > 正文

按住电源键关机和拔电源关机对电脑损害一样吗(直接按电源键关电脑)

平时,我们有的人会按住电源强行关机,有的人会拔电源关机。那么,这两种方式对电脑都有损害吗?损害程度有什么不一样吗?

首先,按住电源键强制关机和拔电源关机并不一样,这点对笔记本和台式机都是如此。

按住电源键关机,在硬件上看就是拉住PWRBTN#引脚,保持一段时间。在电源键按下后,也就是PWRBTN#被置高后,硬件会开启一个时钟Timer,超过5秒还没有抬起,也就是PWRBTN#没有被置低,会触发关机动作。这个关机动作并不是切断电源了事,而是遵循普通的关机硬件流程。大家要知道,实际上CPU和主板上有很多power rail,关机并不是简简单单切断电源就好了,有复杂的关闭各个power rail的时序,要按照一定的顺序来,大家可以看看芯片手册了解一下,这里不再详述。这时进入的ACPI模式是G2,不是拔电源的G3,主板还有部分区域是有电的。

也就是说按住电源键关机,看起来像一下关闭电源了,实际上还是要经历一个完整的关机硬件流程,和普通的正常关机在硬件流程上没有什么不同。和拔电源也有本质的不同。

按电源键和正常关机有什么不同?

硬件流程上一样,那么和普通关机在什么地方不同了呢?差别就是操作系统被跳过了。无论我们是鼠标点选关机,还是按了一下电源键关机,操作系统也就是Windows或者Linux都会受到通知,尝试安全关机。操作系统和固件在ACPI规范下共同工作,不同分工,一步步安全关闭计算机。包括保存文件等等操作。跳过这些动作轻则未保存文件丢失,重则操作系统文件损坏而不能启动。

所以说按住电源键关机对硬件完全没有损伤,硬盘也不会一下掉电而要用到掉电保护的功能。

和正常关机一样。真正需要担忧的是数据的安全问题。

那么拔电源或者家里如果停电会伤害硬件吗?

实际上机械硬盘并不需要担心,真正需要担心的是SSD和主板。FTL的逻辑块和物理块的转换表必须存储在NAND Flash上,否则会造成混乱;高端企业级硬盘上有大量的DRAM来加速,其中的内容也必须存储下来。

在正常关电的时候,和机械硬盘类似,SATA的STANDBY IMMEDIATE命令和SCSI的Stop指令是合适的存储这些信息的机会。SSD控制器可以从容的将这些信息写在合适的地方。

在意外掉电的情况下,情况就复杂不少。不知道大家注意过没有,现在M.2的SSD上面有很多很小的电容:

在Vcc没电的时候,这些电容的gate就会打开,会为主控争取1ms左右的时间。主控会立刻放弃现在所有没有存储的数据,而立刻开始存储FTL表,保证不会出大问题。

在企业级的SSD中,有的DRAM大小将近1GB,而企业SSD的数据完整性要求极高,不容有失,不但FTL表要存好,DRAM中没有存储过的,也必须全部存下来。这就需要很大的电容,来争取更多的时间,如果我们拆开企业SSD,就会发现很多大黄快:

这个Micron的SSD有3块,而Intel的部分SSD,因为DRAM很大,大电容达到8块!

有些低端SSD厂商,没有电容,或者在长时间使用后电容能力下降。在掉电后,FTL表并没有存下来。而是采取在下一次上电的时候重建FTL表,这是用户就会发现SSD反应很慢,要一会才会恢复正常。SSD固件写的不好的,SSD不能用也是可能的。

对主板的伤害主要在于掉电前后的电涌和电流波动,不好的电源+劣质主板有可能损坏主板。所以一定要选一个好的电源。

结论

按住电源键强行关机不会对硬件造成损失,只可能造成数据丢失。而拔电源可能会造成SSD和主板的损失,也有数据丢失的风险。