现在,人们普遍认为不应使用电源开关关闭计算机。但究竟为什么要这样做呢?这是过去架构中遗留下来的谬论吗?
它是否仅仅是为了防止关机时写入的数据损坏(额外:它究竟是如何损坏的?)?我非常确定硬盘驱动器的读取提示在关机时不会再在磁盘上崩溃(否则我现在就没有硬盘驱动器了)。
更准确地说,使用电源开关对计算机进行电源循环是否会导致其更快磨损甚至以任何方式损坏,为什么(仅限硬件)?
答案1
这纯粹是一个软件问题。
当您写入磁盘时,数据不会直接写入磁盘,而是进入缓存,然后在稍后的某个时间点,缓存会被复制到实际磁盘。要么是当缓存已满并且需要腾出一些额外空间时,要么是当计算机没有执行其他重要操作时,或者它被特别指示这样做时。
关机期间的最后一个操作是将缓存刷新到磁盘。
如果你直接关闭电源,缓存中的数据就会丢失。结果,你的数据可能会被损坏。
关机期间发生的另一件重要的事情是所有正在运行的进程都被指示退出,此时关闭所有打开的文件并清理自身。
答案2
在启动过程中,计算机的文件系统将被标记为“脏”。在关机过程中,所有缓冲区都将清除到磁盘,磁盘上的数据与操作系统认为应该显示的数据相同。随后磁盘将被标记为“干净”。
下次启动时将检查该标志。当标志为“干净”时,系统将启动;当标志为“脏”时,将扫描文件系统以确保其完整性。扫描文件系统可能需要很长时间,这就是为什么您不应该硬关机的原因。真正的问题出现在扫描文件系统时抛出不可恢复的错误,这意味着您丢失/损坏了数据。现代文件系统使用一种称为“日志记录”的技术来最大限度地减少不可恢复错误的可能性。
在我看来,硬件根本不在乎硬关机。
答案3
现代计算机具有多层数据存储缓存。这是因为大多数存储设备具有更大的读写数据包,速度更快。操作系统会在 RAM 中保存写入内容一段时间。然后它们被发送到硬盘驱动器。在这里,它们处于临时存储中,等待硬盘驱动器磁头到达正确的扇区。然后它们被写入。如果系统没有完全关闭,数据可能会在整个过程中丢失。
答案4
电子开关将瞬变引入电源。(瞬变是极高的电压,极窄的宽度。事实上,根据我四年的电子学教育,瞬变被定义为无限窄宽度的无限电压。)如果滤波不足,这些尖峰可能会损坏电子设备。机械开关也容易产生振铃。振铃是电源线上的振荡,可能导致类似的问题。
尽管上述许多答案关于软件的说法都是正确的,但也必须考虑电子硬件。