回覆列表
  • 1 # 公理

    讓我來說一說,按電源鍵強制關機與拔掉電源關機並不完全一樣,這點對筆記本和桌上型電腦都是如此。

    也就是說按住電源鍵關機,看起來像一下關閉電源了,實際上還是要經歷一個完整的關機硬體流程,和普通的正常關機在硬體流程上沒有什麼不同。和拔電源也有本質的不同。

    在電源鍵按下後,也就是PWRBTN#被置高後,硬體會開啟一個時鐘Timer,超過5秒還沒有抬起,也就是PWRBTN#沒有被置低,會觸發關機動作。這個關機動作並不是切斷電源了事,而是遵循普通的關機硬體流程。按住電源鍵關機,在硬體上看就是拉住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

    有些低端SSD廠商,沒有電容,或者在長時間使用後電容能力下降。在掉電後,FTL表並沒有存下來。而是採取在下一次上電的時候重建FTL表,這是使用者就會發現SSD反應很慢,要一會才會恢復正常。SSD韌體寫的不好的,SSD不能用也是可能的。這個Micron的SSD有3塊,而Intel的部分SSD,因為DRAM很大,大電容達到8塊!

    對主機板的傷害主要在於掉電前後的電湧和電流波動,不好的電源+劣質主機板有可能損壞主機板。所以一定要選一個好的電源。

    結論

    按住電源鍵強行關機不會對硬體造成損失,只可能造成資料丟失。而拔電源可能會造成SSD和主機板的損失,也有資料丟失的風險。

  • 中秋節和大豐收的關聯?
  • 有什麼印度電影推薦嗎?