Jest to tak powszechna aktywność w terenie, że większość z nas prawdopodobnie nigdy nie przestała o tym myśleć: automatyczny restart. Niezależnie od tego, czy użytkownik lub aplikacja jest inicjowana, co dokładnie dzieje się, gdy komputer zmienia swoją własną moc?
Dzisiejsza sesja pytań i odpowiedzi przychodzi do nas dzięki uprzejmości SuperUser - poddziału Stack Exchange, grupy dyskusyjnej poświęconej tematyce społecznościowej.
Czytnik SuperUser Seth Carnegie zastanawia się nad zarządzaniem energią komputera:
Jak sam komputer może się zrestartować? Po tym, jak to się powtarza, aby ponownie się włączyć? Jakiego rodzaju oprogramowanie to potrafi?
Jak istotnie? Jaka kombinacja magii oprogramowania / sprzętu sprawia, że tak się dzieje?
Uczestnik SuperUser Jcrawfordor oferuje skondensowaną i szczegółową odpowiedź na pytanie, które bardziej niż adekwatnie odnosi się do pytania:
Zbyt długo, nie przeczytałem odpowiedzi: Stany zasilania w twoim komputerze są kontrolowane przez implementację interfejsu ACPI (zaawansowana konfiguracja i interfejs zasilania). Po zakończeniu procesu zamykania system operacyjny ustawia polecenie ACPI wskazujące, że komputer powinien się zrestartować. W odpowiedzi płyta główna resetuje wszystkie komponenty za pomocą odpowiednich komend resetowania lub linii, a następnie postępuje zgodnie z procesem ładowania początkowego. Płyta główna nigdy się nie wyłącza, tylko resetuje różne komponenty, a następnie zachowuje się tak, jakby przycisk zasilania został właśnie naciśnięty.
Długa i chaotyczna, ale (moim zdaniem) bardziej interesująca odpowiedź:
W dawnych czasach (no dobrze, w porządku do studenta takiego jak ja, lata 90. było dawno temu), mieliśmy płyty główne AT (Advanced Technology) zMoc AT zarządzanie. System zasilania AT był bardzo, bardzo prosty. Przycisk zasilania komputera był przełącznikiem sprzętowym (prawdopodobnie z tyłu obudowy), a wejście 120vac przeszło przez to. Fizycznie włączał i wyłączał zasilanie twojego zasilacza, a kiedy ten przełącznik był w pozycji Off, wszystko w twoim komputerze było całkowicie martwe (to sprawiło, że bateria CMOS była bardzo ważna, ponieważ bez niej nie było zasilania, aby utrzymać sprzęt tykanie zegara). Ponieważ przełącznik zasilania był mechanizmem fizycznym, nie było żadnego oprogramowania do włączania i wyłączania zasilania. System Windows wyświetliłby słynny komunikat "Teraz można bezpiecznie wyłączyć komputer", ponieważ mimo, że wszystko było zaparkowane i gotowe do wyłączenia, system operacyjny nie był w stanie obrócić przełącznika zasilania. Ta konfiguracja była czasami określana jakotwarda moc, ponieważ to cały sprzęt.
W dzisiejszych czasach rzeczy wyglądają inaczej, ze względu na cuda płyt głównych ATX iMoc ATX (to zaawansowana technologia eXtended, jeśli śledzisz postęp). Wraz z szeregiem innych postępów (mini-DIN PS / 2, ktoś?), ATX przyniósłdelikatna siła. Miękka moc oznacza, że zasilanie komputera może być kontrolowane przez oprogramowanie. Spowodowało to kilka zmian w imporcie:
Twój wyłącznik zasilania nie "włącza" komputera. Zamiast tego jest on podłączony do podstawowych kontrolerów płyty głównej, które wykrywają, że przycisk został naciśnięty i wykonują wiele kroków, aby przygotować system, w tym rozjaśnienie PS_ON, aby moc była dostępna. Przycisk zasilania nie jest jedynym sposobem wyzwalania procesu uruchamiania, mogą to również zrobić urządzenia na twojej magistrali rozszerzeń. Jest to ważne, ponieważ twoje sieciowe karty sieciowe faktycznie pozostają włączone, kiedy twój komputer jest wyłączony i szukają bardzo specyficznego pakietu, często nazywanego "magicznym pakietem". Jeśli wykryją ten pakiet zaadresowany na swój adres MAC, uruchomią proces uruchamiania . Tak działa "Wake-on-LAN" (WoL).Zegar może także zainicjować rozruch (większość BIOS-u pozwala ustawić czas, który komputer powinien uruchamiać każdego dnia), a urządzenia USB i FireWire mogą uruchamiać rozruch, chociaż nie jestem świadomy żadnej jego implementacji.
Cóż, wyjaśniam Soft Power zarówno dlatego, że myślę, że jest interesujący (zawsze kluczowy powód, dla którego wyjaśniam rzeczy), jak i dlatego, że pozwala ci zrozumieć, w jaki sposób moc i stan pracy / wyłączenia komputera są kontrolowane przez oprogramowanie. W większości obecnych komputerów ten system oprogramowania jest implementacjąZaawansowana konfiguracja i interfejs zasilania lub interfejs ACPI. ACPI to ustandaryzowany, zunifikowany system, który pozwala oprogramowaniu kontrolować system zasilania komputera. Być może słyszałeś oStany mocy ACPI. Podstawowym mechanizmem sterowania mocą są te "stany mocy", twój system operacyjny przełącza tryby zasilania przygotowując się do przełącznika (procesy wyłączania / hibernacji, które mają miejsce przed odłączeniem zasilania), a następnie nakazując płycie głównej przełączanie stanów zasilania . Stany mocy wyglądają tak:
Zauważysz, że restart nie jest jednym z tych stanów. Co się właściwie dzieje, gdy komputer uruchamia się ponownie? Odpowiedź może być zaskakująca, ponieważ z punktu widzenia zarządzania energią jestprawie nic. Jestpolecenie resetowania ACPI. Kiedy powiesz systemowi, że chcesz się zrestartować, działa zgodnie z normalnym procesem zamykania (zatrzymuje wszystkie procesy, wykonuje pewne czynności konserwacyjne, odinstalowuje systemy plików, itd.), A następnie, jako ostatni krok, zamiast przesyłać maszynę do stanu zasilania G2 (tak jakby to było, gdybyś po prostu powiedział, żeby Shut Down) ustawił polecenie Reset. Jest to ogólnie określane jako "Rejestr resetowania", ponieważ podobnie jak większość interfejsu ACPI jest to tylko adres, do którego powinna zostać zapisana określona wartość, aby zażądać resetu. Zacytuję specyfikację 2.0 dotyczącą tego, co robi:
Opcjonalny mechanizm resetowania ACPI określa standardowy mechanizm zapewniający pełne zresetowanie systemu. Po zaimplementowaniu ten mechanizm musi zresetować cały system. Obejmuje to procesory, główną logikę, wszystkie magistrale i wszystkie urządzenia peryferyjne. Z punktu widzenia OSPM, zapewnienie mechanizmu resetowania jest logicznym odpowiednikiem mocy przełączania urządzenia. Po uzyskaniu kontroli po zresetowaniu, OSPM wykona akcje w podobny sposób do zimnego rozruchu.
Tak więc po ustawieniu rejestru resetu kilka rzeczy dzieje się kolejno.
Końcowym efektem tych dwóch kroków (które faktycznie rozpadają się na wiele więcej kroków) jest to, że wygląda na wszystko tak, jak komputer po prostu uruchomiony, ale moc była w rzeczywistości przez cały czas. Oznacza to mniej czasu potrzebnego na zamknięcie i uruchomienie (ponieważ nie trzeba czekać, aż zasilacz stanie się gotowy), a co ważniejsze, możliwe jest uruchomienie rozruchu przez zamknięcie systemu operacyjnego. Oznacza to, że inny wyzwalacz uruchamiania nie musi być używany (WoL itp.) I pozwala na użycie Reboot jako skutecznego sposobu zdalnego resetowania systemu, gdy nie masz sposobu na uruchomienie rozruchu.
To była długa odpowiedź. Ale hej, mam nadzieję, że wiesz teraz więcej o zarządzaniu energią komputera. Z pewnością nauczyłem się kilku rzeczy, które to badają.
Czy masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych użytkowników Stack Exchange, którzy znają się na technologii? Sprawdź cały wątek dyskusji tutaj.