Zaawansowane zarządzanie energią

Zaawansowane zarządzanie energią ( APM ) to interfejs API opracowany przez firmy Intel i Microsoft i wydany w 1992 r., który umożliwia systemowi operacyjnemu działającemu na komputerze osobistym zgodnym z IBM współpracę z systemem BIOS (część oprogramowania układowego komputera ) w celu zarządzania energią .

Wersja 1.2 była ostatnią wersją specyfikacji APM, wydaną w 1996 roku. ACPI jest następcą APM. Microsoft wycofał wsparcie dla APM w systemie Windows Vista . Jądro Linuksa nadal w większości obsługuje APM, chociaż obsługa bezczynności procesora APM została usunięta w wersji 3.0.

Przegląd

Warstwy w APM

APM wykorzystuje warstwowe podejście do zarządzania urządzeniami. Aplikacje obsługujące APM (w tym sterowniki urządzeń) komunikują się ze sterownikiem APM specyficznym dla systemu operacyjnego. Ten sterownik komunikuje się z systemem BIOS obsługującym APM, który steruje sprzętem. Istnieje możliwość rezygnacji z kontroli APM dla poszczególnych urządzeń, z której można skorzystać, jeśli kierowca chce komunikować się bezpośrednio z urządzeniem sprzętowym.

Komunikacja odbywa się w obie strony; zdarzenia zarządzania energią są wysyłane z systemu BIOS do sterownika APM, a sterownik APM wysyła informacje i żądania do systemu BIOS za pośrednictwem wywołań funkcji. W ten sposób sterownik APM jest pośrednikiem między BIOS-em a systemem operacyjnym.

Zarządzanie energią odbywa się na dwa sposoby; poprzez wyżej wymienione wywołania funkcji ze sterownika APM do systemu BIOS żądającego zmiany stanu zasilania i automatycznie na podstawie aktywności urządzenia.

W APM 1.0 i APM 1.1 zarządzanie energią jest prawie w pełni kontrolowane przez BIOS. W APM 1.2 system operacyjny może kontrolować czas PM (np. limit czasu zawieszenia).

Zdarzenia zarządzania energią

Dostępnych jest 12 zdarzeń związanych z zasilaniem (takich jak wstrzymanie, wstrzymanie i wznowienie pracy oraz powiadomienia o niskim poziomie naładowania baterii) oraz zdarzenia zdefiniowane przez producenta OEM , które mogą być wysyłane z systemu APM BIOS do systemu operacyjnego. Sterownik APM regularnie sonduje powiadomienia o zmianach zdarzeń.

Zdarzenia zarządzania energią:

Nazwa Kod Komentarz
Powiadomienie o żądaniu gotowości systemu 0x0001
Powiadomienie o żądaniu zawieszenia systemu 0x0002
Normalne wznowienie Powiadomienie systemowe 0x0003
Powiadomienie systemowe o krytycznym wznowieniu 0x0004
Powiadomienie o niskim poziomie baterii 0x0005
Powiadomienie o zmianie stanu zasilania 0x0006
Zaktualizuj powiadomienie o godzinie 0x0007
Powiadomienie o zawieszeniu systemu krytycznego 0x0008
Powiadomienie o żądaniu gotowości systemu użytkownika 0x0009
Powiadomienie o żądaniu zawieszenia systemu użytkownika 0x000A
Powiadomienie o wznowieniu stanu wstrzymania systemu 0x000B
Powiadomienie o zmianie możliwości 0x000C Ze względu na konfigurację lub wkładanie/usuwanie urządzenia

funkcje APM

Zdefiniowano 21 wywołań funkcji APM, których sterownik APM może używać do sprawdzania stanów zarządzania energią lub żądania zmiany stanu zasilania. Przykładowe wywołania funkcji obejmują powiadomienie systemu BIOS o bieżącym użyciu procesora (BIOS może odpowiedzieć na takie wywołanie, wprowadzając procesor w stan niskiego poboru mocy lub przywracając go do stanu pełnej mocy), pobieranie bieżącego stanu zasilania urządzenie lub żądanie zmiany stanu zasilania.

Nazwa Kod Komentarz
Kontrola instalacji APM 0x00
Połączenie interfejsu trybu rzeczywistego APM 0x01
16-bitowy interfejs APM Protected Connect 0x02 Unika trybu rzeczywistego lub wirtualnego86.
32-bitowy interfejs APM Protected Connect 0x03 Unika trybu rzeczywistego lub wirtualnego86.
Odłączenie interfejsu APM 0x04
Procesor bezczynny 0x05

Żąda zawieszenia systemu. 0) Zegar zatrzymał się do momentu przerwania tykania zegara. 1) Wolny zegar
Procesor zajęty 0x06 Sterownik nakazuje systemowi APM przywrócenie szybkości zegara procesora.
Ustaw stan zasilania 0x07 Ustaw system lub urządzenie w stan wstrzymania/wstrzymania/wyłączenia.
Włącz/wyłącz zarządzanie energią 0x08
Przywróć ustawienia domyślne APM BIOS po włączeniu zasilania 0x09
Uzyskaj stan zasilania 0x0A Obsługuje status AC „W trybie zasilania awaryjnego”. I stan baterii.
Pobierz wydarzenie PM 0x0B Sprawdza zdarzenia APM. Będzie wywoływany raz na sekundę.
Uzyskaj stan zasilania 0x0C
Włącz/wyłącz zarządzanie energią urządzenia 0x0D
Wersja sterownika APM 0x0E
Włącz/wyłącz zarządzanie energią 0x0F Zarządzanie APM dla określonego urządzenia.
Zdobądź możliwości 0x10
Uzyskaj/ustaw/wyłącz licznik czasu wznawiania 0x11
Włącz/wyłącz wznawianie na wskaźniku dzwonka 0x12
Włącz/wyłącz żądania oparte na zegarze 0x13
Kontrola instalacji OEM APM 0x80 Informuje, czy APM BIOS obsługuje funkcje zależne od sprzętu OEM.
Funkcja OEM APM 0x80 Dostęp do funkcji specyficznych dla OEM.

Stany mocy

Specyfikacja APM definiuje stany zasilania systemu i stany zasilania urządzeń.

Stany zasilania systemu

APM definiuje pięć stanów zasilania dla systemu komputerowego:

  • Pełne włączenie: komputer jest włączony, a żadne urządzenie nie jest w trybie oszczędzania energii.
  • APM włączony: komputer jest włączony, a APM steruje zarządzaniem energią urządzenia zgodnie z potrzebami.
  • APM Standby: Większość urządzeń znajduje się w stanie niskiego poboru mocy, procesor jest spowolniony lub zatrzymany, a stan systemu jest zapisywany. Komputer można szybko przywrócić do poprzedniego stanu (w odpowiedzi na aktywność, np. naciśnięcie przez użytkownika klawisza na klawiaturze).
  • APM Suspend: Większość urządzeń jest wyłączona, ale stan systemu jest zapisywany. Komputer można przywrócić do poprzedniego stanu, ale zajmuje to stosunkowo dużo czasu. (Hibernacja jest specjalną formą stanu zawieszenia APM).
  • Wyłączony: komputer jest wyłączony.

Stany zasilania urządzenia

APM definiuje również stany zasilania, które może zaimplementować sprzęt obsługujący APM. Nie ma wymogu, aby urządzenie obsługujące APM implementowało wszystkie stany.

Cztery stany to:

  • Urządzenie włączone: Urządzenie jest w trybie pełnego zasilania.
  • Zarządzanie zasilaniem urządzenia: Urządzenie jest nadal włączone, ale niektóre funkcje mogą być niedostępne lub mogą mieć obniżoną wydajność.
  • Urządzenie o niskim poborze mocy: Urządzenie nie działa. Zasilanie jest utrzymywane, aby można było „obudzić” urządzenie.
  • Urządzenie wyłączone: Urządzenie jest wyłączone.

procesor

Rdzeń procesora (zdefiniowany w APM jako zegar procesora, pamięć podręczna , magistrala systemowa i zegary systemowe) jest traktowany w APM w szczególny sposób, ponieważ jest to ostatnie urządzenie, które jest wyłączane i pierwsze urządzenie, które ma być ponownie włączone. Rdzeń procesora jest zawsze kontrolowany przez APM BIOS (nie ma możliwości sterowania nim przez sterownik). Sterowniki mogą używać wywołań funkcji APM do powiadamiania systemu BIOS o użyciu procesora, ale działanie na podstawie tych informacji należy do systemu BIOS; sterownik nie może bezpośrednio nakazać procesorowi przejścia w stan oszczędzania energii.

W dyskach ATA

Specyfikacja ATA i specyfikacja SATA określa warunki APM dla dysków twardych, które określają kompromis między częstotliwością spowalniania a wydajnością zawsze włączoną. W przeciwieństwie do APM po stronie BIOS-u, ATA APM i SATA APM nigdy nie zostały wycofane.

Agresywne częstotliwości spowalniania mogą skrócić żywotność dysku poprzez niepotrzebne gromadzenie cykli obciążenia; większość nowoczesnych dysków ma wytrzymać 300 000 cykli i zwykle trwa co najmniej 600 000. Z drugiej strony brak spowolnienia dysku spowoduje dodatkowy pobór mocy i wytwarzanie ciepła; wysokie temperatury również skracają żywotność dysków twardych.

Zobacz też

Linki zewnętrzne