Czy procesor jest aktywny w trybie uśpienia?


39

Załóżmy, że w systemie operacyjnym Windows przełączasz komputer w tryb uśpienia i odkładasz go. O ile wiem, nie będą działać żadne programy ani procesy.

Ale procesor nadal działa lub działają w tle w jakiś sposób i wykorzystując siłę?

Ponieważ kiedy wykonujesz jakąkolwiek akcję, być może przy nowoczesnych komputerach z systemem Windows 7 / 8.1 / 10 Tj. Otwierając pokrywę, naciśnij przycisk, dotykając myszy, natychmiast się włącza bez konieczności naciskania przycisku zasilania. Czy to dlatego, że procesor aktywnie czekał na te zdarzenia w stanie niskiego poboru mocy?

Odpowiedzi:


57

Czy procesor jest aktywny w trybie uśpienia?

To zależy. Istnieją różne stany uśpienia (od S1 do S4), a stan procesora nie jest taki sam we wszystkich.

  • Procesor jest zatrzymany w stanie uśpienia S1
  • Procesor jest wyłączony w stanie uśpienia S2 lub wyższym.

Uśpienie to zwykle stan uśpienia S3, ale BIOS może czasami być skonfigurowany do używania stanu uśpienia S1 (używany, gdy wznawianie z S3 nie działa poprawnie).

powercfg -a można użyć do sprawdzenia, jakie stany uśpienia obsługuje komputer.

Przykładowe dane wyjściowe:

F:\test>powercfg -a
The following sleep states are available on this system: 
Standby (S3) Hibernate Hybrid Sleep
The following sleep states are not available on this system: 
Standby (S1)
    The system firmware does not support this standby state.
Standby (S2)
    The system firmware does not support this standby state.

Stany uśpienia systemu

Stany S1, S2, S3 i S4 są stanami uśpienia. System w jednym z tych stanów nie wykonuje żadnych zadań obliczeniowych i wydaje się być wyłączony. Jednak w przeciwieństwie do systemu w stanie zamknięcia (S5), system uśpiony zachowuje stan pamięci, zarówno na sprzęcie, jak i na dysku. System operacyjny nie musi być ponownie uruchamiany, aby przywrócić komputer do stanu roboczego.

Niektóre urządzenia mogą wybudzić system ze stanu uśpienia, gdy wystąpią pewne zdarzenia, takie jak połączenie przychodzące do modemu. Ponadto na niektórych komputerach zewnętrzny wskaźnik informuje użytkownika, że ​​system tylko śpi.

Z każdym kolejnym stanem uśpienia, od S1 do S4, więcej komputerów jest zamykanych. Wszystkie komputery zgodne z ACPI wyłączają zegary procesora w S1 i tracą kontekst sprzętowy w S4 (chyba że przed zamknięciem zostanie zapisany plik hibernacji), jak podano w poniższych sekcjach. Szczegóły pośrednich stanów uśpienia mogą się różnić w zależności od tego, jak producent zaprojektował maszynę. Na przykład na niektórych komputerach niektóre układy na płycie głównej mogą tracić moc w S3, podczas gdy na innych takie układy zachowują moc do S4. Ponadto niektóre urządzenia mogą budzić system tylko z S1, a nie z głębszych stanów uśpienia.

Stan zasilania systemu S1

Stan zasilania systemu S1 jest stanem uśpienia o następujących właściwościach:

Pobór energii

  • Mniejsze zużycie niż w S0 i większe niż w innych stanach snu. Zegar procesora jest wyłączony, a zegary magistrali są zatrzymane. Wznowienie oprogramowania

  • Kontrola uruchamia się ponownie tam, gdzie została przerwana.

Opóźnienie sprzętowe

  • Zazwyczaj nie więcej niż dwie sekundy.

Kontekst sprzętowy systemu

  • Cały kontekst zachowany i obsługiwany przez sprzęt.

Stan zasilania systemu S2

Stan zasilania systemu S2 jest podobny do S1, z tym wyjątkiem, że kontekst procesora i zawartość pamięci podręcznej systemu są tracone, ponieważ procesor traci moc. Stan S2 ma następujące cechy:

Pobór energii

  • Mniejsze zużycie niż w stanie S1 i większe niż w S3. Procesor jest wyłączony. Zegary autobusowe są zatrzymane; niektóre autobusy mogą stracić moc. Wznowienie oprogramowania

  • Po przebudzeniu sterowanie rozpoczyna się od wektora zerowania procesora.

Opóźnienie sprzętowe

  • Dwie sekundy lub więcej; opóźnienie S1 większe lub równe.

Kontekst sprzętowy systemu

  • Kontekst procesora i zawartość pamięci podręcznej systemu zostały utracone.

Stan zasilania systemu S3

Stan zasilania systemu S3 jest stanem uśpienia o następujących cechach:

Pobór energii

  • Mniejsze zużycie niż w stanie S2. Procesor jest wyłączony, a niektóre układy na płycie głównej również mogą być wyłączone.

Wznowienie oprogramowania

  • Po zdarzeniu pobudzającym sterowanie rozpoczyna się od wektora zerowania procesora.

Opóźnienie sprzętowe

  • Niemal nie do odróżnienia od S2.

Kontekst sprzętowy systemu

  • Zachowana jest tylko pamięć systemowa. Kontekst procesora, zawartość pamięci podręcznej i kontekst chipsetu zostały utracone.

Stan zasilania systemu S4

Stan zasilania systemu S4, stan hibernacji, jest stanem uśpienia o najniższej mocy i ma najdłuższe opóźnienie budzenia. Aby ograniczyć zużycie energii do minimum, sprzęt wyłącza wszystkie urządzenia. Kontekst systemu operacyjnego jest jednak utrzymywany w pliku hibernacji (obraz pamięci), który system zapisuje na dysku przed wejściem w stan S4. Po ponownym uruchomieniu moduł ładujący czyta ten plik i przeskakuje do poprzedniej lokalizacji prehibernacji w systemie.

Jeśli komputer w stanie S1, S2 lub S3 traci całą moc prądu przemiennego lub baterii, traci kontekst sprzętowy systemu i dlatego musi zostać ponownie uruchomiony, aby powrócić do S0. Komputer w stanie S4 może jednak zrestartować się ze swojej poprzedniej lokalizacji nawet po utracie baterii lub zasilania sieciowego, ponieważ kontekst systemu operacyjnego jest zachowany w pliku hibernacji. Komputer w stanie hibernacji nie zużywa energii (z możliwym wyjątkiem prądu spływu).

Stan S4 ma następujące cechy:

Pobór energii

  • Wyłączony, z wyjątkiem prądu upływu do przycisku zasilania i podobnych urządzeń. Wznowienie oprogramowania

  • System uruchomi się ponownie z zapisanego pliku hibernacji. Jeśli nie można załadować pliku hibernacji, wymagane jest ponowne uruchomienie komputera. Ponowna konfiguracja sprzętu, gdy system jest w stanie S4, może spowodować zmiany uniemożliwiające prawidłowe załadowanie pliku hibernacji.

Opóźnienie sprzętowe

  • Długi i nieokreślony. Tylko interakcja fizyczna przywraca system do stanu roboczego. Taka interakcja może obejmować naciśnięcie przycisku WŁĄCZENIA lub, jeśli obecny jest odpowiedni sprzęt i włączono funkcję budzenia, pierścień przychodzący do modemu lub aktywność w sieci LAN. Urządzenie może również obudzić się z licznika wznowienia, jeśli sprzęt go obsługuje. Kontekst sprzętowy systemu

  • Żadne nie zostały zachowane w sprzęcie. System zapisuje obraz pamięci w pliku hibernacji przed wyłączeniem zasilania. Po załadowaniu system operacyjny odczytuje ten plik i przeskakuje do poprzedniej lokalizacji.

Stany uśpienia systemu źródłowego


Dalsza lektura


powercfg - a can be used...: jest dodatkowa przestrzeń między -i a.
Ruslan,

25

Doskonała odpowiedź Davida jest poprawna w przypadku tradycyjnych komputerów i wersji systemu Windows starszych niż 8. Jednak system Windows 8 wprowadził nowy tryb uśpienia dla urządzeń o niskim poborze mocy (tablety z atomem itp.). Jest to znane jako InstantGo / Connected Standby . Jest to domyślny tryb „uśpienia” po wyłączeniu ekranu na tablecie Windows z obsługiwanym sprzętem.

Connected Standby nie korzysta z tradycyjnych stanów uśpienia ACPI. Jego celem jest utrzymanie aktywności urządzeń peryferyjnych łączności , umożliwiając systemowi operacyjnemu reagowanie na powiadomienia, np. Przychodzące wiadomości e-mail, wiadomości błyskawiczne itp. Ponadto urządzenie „budzi się” przez kilkaset milisekund co 30 sekund. Procesor powinien reagować (budzić się) szybciej niż w przypadku tradycyjnego trybu uśpienia S3.

[Wymagany Connected Standby] Możliwość przełączania między trybem bezczynności a trybem aktywnym w czasie krótszym niż 100 milisekund. Tryb aktywny umożliwia uruchamianie kodu na procesorze (procesorach), ale niekoniecznie umożliwia dostęp do urządzenia pamięci masowej lub innych kontrolerów hosta lub urządzeń peryferyjnych. Tryb bezczynności może być stanem zależnym od zegara lub zależnym od mocy, ale powinien to być stan o najniższym zużyciu energii dla SoC i DRAM.

źródło

Zauważ, że jest to znacznie, dużo szybciej niż do dwóch sekund określonych dla S1 lub dwóch sekund lub więcej dla S2 / S3, jak w odpowiedzi Dawida.

W tym celu procesor jest utrzymywany w specjalnym stanie, który Microsoft nazywa DRIPS (stan najgłębszego czasu bezczynności platformy) na obsługiwanym sprzęcie.

W układach SoC Intel (x86) mieści się to w jednym z nowych (niestandardowych) stanów S0ix , a konkretnie w S0i3. W tym stanie CPU nie wykonuje żadnego kodu, ale SoC jako całość jest nadal wystarczająco aktywna, aby pozostać podłączona do sieci i reagować na wszelkie zdarzenia.


Jeśli chodzi o ACPI, jest to nadal uważane za stan S0 (aktywny). Windows używa ACPI_S0_LOW_POWER_IDLEflagi, aby ustalić, czy DRIPS jest obsługiwany. Specyfikacja ACPI ( 6.0 , kwiecień 2015, § 5.2.2, tabela 5-35, str. 127) definiuje tę flagę jako:

Jeden informuje OSPM, że platforma jest w stanie osiągnąć oszczędności energii w S0 podobne lub lepsze niż zwykle osiągane w S3. W efekcie, gdy ten bit jest ustawiony, oznacza to, że system nie odniesie żadnej korzyści z zasilania poprzez przejście w tryb uśpienia do S3.

Według Microsoft :

Systemy obsługujące Modern Standby nie używają S1-S3.


5

Istnieje wiele rodzajów trybów gotowości zarządzanych przez ACPI https://en.wikipedia.org/wiki/Advanced_Configuration_and_Power_Interface

Procesor zwykle działa w trybie czuwania, chociaż z niską częstotliwością taktowania - nasłuchuje tylko określonych wejść i nie uruchamia aktywnie żadnego innego procesu. Próbowałem najpierw zmierzyć to, uruchamiając procmon i ustawiając laptopa w tryb uśpienia, ale w tym okresie nie działał wcale.

Dostępne są 4 stany globalne, G0-G3, gdzie G0 jest bieganie i G3 jest Mechanical off Według artykułu powiązanego, G1 substate S2 wyłącza CPU i przenosi go w pamięci podręcznej do pamięci RAM. RAM jest tym, który jest włączony we wszystkich typach snu - jest wyłączany w hibernacji i przy standardowym wyłączaniu. W większości stanów uśpienia wszystkie zewnętrzne urządzenia wejściowe są włączone i wyślą zdarzenia budzenia do komputera. Komputer może się również obudzić, aby przetworzyć procedury wymagające budzenia.


2
„przenosi pamięć podręczną do pamięci RAM” Ponieważ pamięć podręczna jest, no cóż, pamięcią podręczną, to nie tylko opróżnianie brudnych linii pamięci podręcznej, a następnie wyłączanie jej wystarczające?
ζ--

Procesor jest włączony, ale nie działa.
ilkhd,

0

Nie mam nic technicznego do dodania do tych i tak doskonałych odpowiedzi. Ale najłatwiejszym sposobem przetestowania efektu trybu uśpienia na własnym komputerze (zakładam, że mówisz o laptopie, ponieważ mówisz „odłóż go”) jest przełączenie laptopa w tryb uśpienia i odłączenie go (zwróć uwagę na baterię poziom pierwszy). Wznów pracę urządzenia kilka godzin później i sprawdź, czy w tym czasie poziom naładowania baterii się wyczerpał.

Dowiedziałem się na własnej skórze, że tryb uśpienia wyczerpuje moją baterię w dość szybkim tempie. Przed podróżą zamknąłem pokrywę mojego laptopa - myśląc, że skonfigurowałem „zamknij pokrywę”, aby uruchomić hibernację w zaawansowanych ustawieniach zasilania - ale zamiast tego przeszedł w tryb uśpienia. Kilka godzin później urządzenie nie wznowiło pracy, ponieważ bateria całkowicie się wyczerpała (była to stara, słaba bateria).

Dla kontrastu mogę hibernować mój laptop i odłączyć go na czas nieokreślony, i nie rozładuje baterii szybciej niż naturalne wyładowanie ciągłe, które występuje przez kilka dni.

Ale jak powiedzieli inne posty: YMMV.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.