我的電腦怎麼能重新啟動?

Geoffrey Carr

目錄:

我的電腦怎麼能重新啟動?
我的電腦怎麼能重新啟動?
Anonim
這是一個常見的地方活動,我們大多數人可能從未停下來思考它:自動重啟。無論是用戶還是應用程序啟動,當您的計算機自行循環時,究竟會發生什麼?
這是一個常見的地方活動,我們大多數人可能從未停下來思考它:自動重啟。無論是用戶還是應用程序啟動,當您的計算機自行循環時,究竟會發生什麼?

今天的問答環節由SuperUser提供,這是Stack Exchange的一個細分,Stack Exchange是一個由Q&A網站組成的社區驅動組合。

問題

超級用戶讀者Seth Carnegie對計算機電源管理感到奇怪:

How can a computer restart itself? After it’s off, how does it tell itself to come back on again? What kind of software is it that can do this?

怎麼樣?軟件/硬件魔法的組合是如何實現的?

答案

超級用戶貢獻者Jcrawfordor提供了一個簡明而詳細的回答問題,而不僅僅是充分解決了這個問題:
超級用戶貢獻者Jcrawfordor提供了一個簡明而詳細的回答問題,而不僅僅是充分解決了這個問題:

太長了;沒讀過它答案: 計算機中的電源狀態由ACPI(高級配置和電源接口)的實現控制。在關閉過程結束時,操作系統會設置一個ACPI命令,指示計算機應該重新啟動。作為響應,主板使用它們各自的重置命令或線路重置所有組件,然後遵循引導過程。主板實際上從未關閉,它只會重置各種組件,然後就像按下電源按鈕一樣。

漫長而漫無邊際但(在我看來)更有趣的答案:

軟實力及其運作方式

在過去(好吧,好吧,對於像我這樣的大學生,很久以前的90年代),我們有AT(高科技)主板與 AT電源 管理。 AT電源系統非常非常簡單。計算機上的電源按鈕是硬件切換(可能位於機箱背面),您的120vac輸入正好通過它。它實際上打開和關閉了電源的電源,當這個開關處於關閉位置時,計算機中的所有東西都完全死了(這使得CMOS電池非常重要,因為沒有它就沒有電源來保持硬件時鐘滴答作響)。由於電源開關是一種物理機制,因此無法通過軟件方式打開和關閉電源。 Windows會顯示著名的“現在可以安全地關閉計算機”消息,因為雖然所有內容都已停放並準備關閉,但操作系統無法實際翻轉電源開關。這種配置有時被稱為 硬實力 ,因為它是所有硬件。

現在情況有所不同,因為ATX主板的奇蹟和 ATX電源 (如果您保持跟踪,那就是高級技術擴展)。除了許多其他進步(迷你DIN PS / 2,任何人?),ATX帶來了 軟實力 。軟電源意味著可以通過軟件控制計算機的電源。這帶來了一些重大變化:

  • 待機功率:您可能已經看到電源引腳分配標記的“5v SB”或“5v待機”連接器。該 備用電源 即使計算機關閉,主板上的5v線始終打開。這就是為現代計算機維修時拔下或關閉PSU硬盤開關(如果有)的重要原因,因為即使它關閉也可能會使5v SB短路並損壞主板。這也是CMOS電池不再那麼重要的原因 - 只要電源具有主電源,5v SB就會用來替換CMOS電池,所以CMOS電池僅在您完全拔掉電腦時使用。 5v SB系列重要的是允許您的計算機組件(最重要的是BIOS和網絡適配器)在計算機關閉時繼續運行一些簡單的軟件。
  • 智能電源控制。如果你看一下電源主板(P1)連接器的引腳分配,你會發現兩個引腳通常是標記的 PS_ONPS_RDY 。這些代表“電源開啟”和“電源就緒”。如果您想進行試驗,請取出不在計算機中的電源,將其插入,並小心地將地線(黑線之一)短接到PS_ON線(綠線)。當風扇旋轉時,電源將明顯打開。主板上運行+ 5v SB的組件實際上通過連接PS_ON引腳來打開和關閉電源。由於電源中有一些電容器和其他組件需要花費一些時間來充電,因此在PSU開啟後,電源主輸出的電壓可能不會立即穩定。這就是PS_RDY引腳的用途,它在電源的內部邏輯確定電源“就緒”並且將提供穩定電源時亮起。主板等待直到PS_RDY打開才能繼續啟動。

因此,您的電源開關不再“打開”計算機。相反,它連接到主板的基本控制器,它們檢測到按鈕已被按下並執行許多步驟以準備系統,包括點亮PS_ON以便可以使用電源。電源按鈕不是觸發啟動過程的唯一方法,擴展總線上的設備也可以這樣做。這很重要,因為您的以太網網絡適配器實際上在您的計算機關閉時保持打開並查找通常稱為“Magic數據包”的非常特定的數據包。如果他們檢測到此數據包發送到其MAC地址,它們將觸發啟動過程。這就是“Wake-on-LAN”(WoL)的工作原理。時鐘也可以啟動啟動(大多數BIOS允許您設置計算機每天應該啟動的時間),USB和FireWire設備可以觸發啟動,雖然我不知道任何實現。

了解電源控制

好吧,我解釋了Soft Power的原因,因為我覺得它很有意思(總是我解釋事情的一個關鍵原因),因為它可以讓你了解你的計算機的電源和運行/關閉狀態是如何全部由軟件控制的。在大多數當前的計算機中,這個軟件系統是一個實現的 高級配置和電源接口,或ACPI 。 ACPI是一個標準化的統一系統,允許軟件控制計算機的電源系統。你可能聽說過 ACPI電源狀態 。電源控制的基本機制是這些“電源狀態”,您的操作系統通過準備開關(電源實際翻轉之前發生的關機/休眠過程)切換到電源模式,然後命令主板切換電源狀態。電源狀態如下所示:

  • G0:工作(您的計算機處於“開啟”狀態)
  • G1:睡眠(計算機的待機狀態,分為S子狀態)

    • S1:CPU和RAM的電源保持打開狀態,但CPU沒有執行指令。外圍設備已關閉。
    • S2:CPU斷電,RAM保持不變
    • S3:除RAM和触發恢復(鍵盤)的設備外,所有組件都斷電。當您告訴操作系統“睡眠”時,它將停止進程,然後進入此模式。
    • S4:冬眠。絕對一切都被關閉了。當您告訴操作系統休眠時,它會停止進程,將RAM的內容保存到磁盤,然後進入此模式。
  • G2:軟關閉。這是你電腦的“關閉”狀態。除了可以觸發啟動的設備外,電源關閉。
  • G3:機械關閉。

如何重置實際發生

您會注意到重啟不是這些狀態之一。那麼當你的電腦重新啟動時會發生什麼?答案可能令人驚訝,因為從電源管理的角度來看 幾乎沒有 。有 ACPI重置命令 。當您告訴操作系統重新啟動時,它會遵循其正常關閉過程(停止所有進程,執行一些維護,卸載文件系統等),然後作為最後一步,而不是將計算機發送到電源狀態G2(如果您只是告訴它關閉)它會設置重置命令。這通常被稱為“復位寄存器”,因為與大多數ACPI接口一樣,它只是一個地址,應該寫入特定值以請求復位。我將引用2.0規範來說明它的作用:

The optional ACPI reset mechanism specifies a standard mechanism that provides a complete system reset. When implemented, this mechanism must reset the entire system. This includes processors, core logic, all buses, and all peripherals. From an OSPM perspective, asserting the reset mechanism is the logical equivalent to power cycling the machine. Upon gaining control after a reset, OSPM will perform actions in like manner to a cold boot.

因此,當設置復位寄存器時,會發生一些事情。

  • 所有邏輯都被重置。這意味著將相應的複位命令發送到各種硬件,包括CPU,存儲器控制器,外圍控制器等。在大多數情況下,這僅僅意味著點亮物理RST線,正如AndrejaKo在上面所示。
  • 然後引導計算機。這是“以類似的方式對冷啟動執行操作”部分。主板執行的步驟與按下電源按鈕後電源剛剛準備就緒的步驟相同。

這兩個步驟的最終效果(實際上分解為更多的步驟)是它看起來就像剛剛啟動的計算機一樣,但實際上是整個時間的力量。這意味著關閉和啟動所需的時間更少(因為您不必等待電源準備就緒),並且重要的是允許操作系統關閉啟動啟動。這意味著不需要使用另一個啟動觸發器(WoL等),並且當您無法觸發啟動時,允許您使用Reboot作為遠程重置系統的有效方法。

這是一個很長的答案。但是,嘿,希望你現在對計算機電源管理有更多的了解。我當然學到了一些研究這個的東西。

有什麼要補充說明嗎?在評論中發聲。想要從其他精通技術的Stack Exchange用戶那裡閱讀更多答案嗎?在這裡查看完整的討論主題。

熱門話題