ACPI

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 13 martie 2022; verificarea necesită 1 editare .

ACPI (  Advanced Configuration and Power Interface ) este  un standard industrial deschis , lansat pentru prima dată în decembrie 1996 și dezvoltat în comun de HP , Intel , Microsoft , Phoenix și Toshiba , care definește o interfață comună pentru descoperirea hardware , managementul alimentării și configurarea plăcii de bază și dispozitivele .

Specificația 2.0 a fost introdusă în septembrie 2000 . Se extinde la o gamă mai largă de computere, inclusiv servere corporative, desktop-uri și laptop-uri. În plus, ACPI 2.0 a adăugat suport pentru microprocesoare pe 64 de biți pentru servere, suport pentru diferite tipuri de memorie, dispozitive PCI și PCI-X .

Versiunea de specificații 3.0b a fost lansată pe 10 octombrie 2006 .

În prezent, cea mai recentă versiune a specificației ACPI este versiunea 6.2a, lansată de Forumul UEFI în septembrie 2017. [unu]

Sarcina ACPI este de a asigura comunicarea între sistemul de operare , hardware -ul și BIOS -ul plăcii de bază.

ACPI a înlocuit tehnologia APM ( Advanced Power Management ) . 

Introducere

Cea mai cunoscută parte a standardului ACPI este gestionarea energiei, care are două îmbunătățiri semnificative față de standardele anterioare. În primul rând, conceptul de ACPI transferă controlul puterii către sistemul de operare (OS). Acest model se compară favorabil cu modelul APM anterior, în care BIOS-ul plăcii de bază este responsabilă de gestionarea energiei , iar capacitățile sistemului de operare în acest sens sunt foarte limitate. În modelul ACPI, BIOS -ul oferă sistemului de operare metode de control direct, granular al hardware-ului. Astfel, sistemul de operare obține un control aproape complet asupra consumului de energie.

O altă parte importantă a specificației ACPI este de a oferi capabilități de gestionare a energiei pe servere și desktop-uri care anterior erau disponibile doar pe laptopuri . De exemplu, sistemul poate fi pus într-o stare de putere extrem de scăzută în care doar memoria principală este alimentată (sau eventual chiar fără alimentare), dar unele întreruperi ale dispozitivului (ceas în timp real, tastatură, modem etc.) pot transfera rapid sistemul de la o astfel de stare la modul normal de funcționare (adică „treziți” sistemul).

Pe lângă cerințele de interfață software , ACPI necesită și suport special din partea hardware. Astfel, sistemul de operare, chipsetul plăcii de bază și chiar și unitatea centrală de procesare trebuie să aibă suport ACPI .

În zilele noastre, diferite versiuni de ACPI sunt acceptate de multe sisteme de operare, inclusiv toate versiunile de Microsoft Windows începând cu Windows 98 , sistemele GNU/Linux , FreeBSD , OpenBSD , NetBSD și eComStation .

Detalii tehnice

Interfața ACPI este organizată prin plasarea într-o anumită zonă a RAM a mai multor tabele care conțin o descriere a resurselor hardware și a metodelor software de gestionare a acestora. Fiecare tip de tabel are un format specific, descris în caietul de sarcini. În plus, tabelele care conțin metode de control al dispozitivului și handlere de evenimente ACPI conțin cod AML (ACPI Machine Language), un set de instrucțiuni independent de mașină, prezentat într-o formă compactă. Un sistem de operare care acceptă ACPI conține un interpret AML care traduce instrucțiunile AML în instrucțiuni CPU, executând astfel metode sau handlere de evenimente.

Unele dintre aceste tabele stochează toate sau o parte din datele statice în sensul că acestea nu se schimbă de la pornirea sistemului la pornire. Datele statice sunt de obicei create de producătorul plăcii de bază sau ale BIOS -ului și descrise într-un limbaj special ASL (ACPI Source Language) și apoi compilate într-o reprezentare AML.

Alte tabele stochează date dinamice care depind, de exemplu, de setările BIOS și de configurația plăcii de bază. Astfel de tabele sunt formate de BIOS în stadiul de pornire a sistemului înainte de transferul controlului către sistemul de operare .

Rolul sistemului de operare în acest model este că face tranziția diferitelor componente hardware de la o stare (cum ar fi funcționarea normală) la alta (cum ar fi modul de consum redus). Trecerea de la o stare la alta are loc, de regulă, printr-un eveniment. De exemplu, o scădere a temperaturii pe un nucleu de procesor este un eveniment la care sistemul de operare poate apela o metodă pentru a reduce viteza ventilatorului. Un alt exemplu: utilizatorul a ordonat în mod explicit sistemului să intre în somn în timp ce salvează RAM pe disc, iar după un timp administratorul de rețea a pornit sistemul folosind funcția Wake-on-LAN .

State

State globale

Se disting următoarele stări principale ale „sistemului în ansamblu”.

  • G0 ( S0 ) (Funcționează) - funcționare normală.
  • G1 (Suspend, Sleeping, Sleeping Legacy) - aparatul este oprit, dar contextul actual al sistemului (contextul sistemului) este salvat, lucrul poate fi continuat fără repornire. Pentru fiecare dispozitiv, este definit „gradul de pierdere a informațiilor” în timpul procesului de somn, precum și unde ar trebui să fie stocate informațiile și de unde vor fi citite la trezire și timpul de trezire de la o stare la alta ( de exemplu, de la starea de somn la starea de lucru). Există 4 stări de somn:
    • S1 ("Power on Suspend" (POS) în BIOS) este o stare în care toate cache-urile procesorului sunt resetate și procesoarele au încetat să execute instrucțiuni. Cu toate acestea, puterea procesoarelor și a memoriei RAM este acceptată; dispozitivele care nu au indicat că ar trebui să rămână pornite pot fi oprite;
    • S2  este o stare de somn mai profundă decât S1 când procesorul este oprit, dar de obicei nu este utilizat;
    • S3 ("Suspend to RAM" (STR) în BIOS, "Standby" în versiunile de Windows până la Windows XP și unele variante de Linux , "Sleep" în Windows Vista și Mac OS X , deși specificațiile ACPI sunt denumite doar ca S3 și Sleep) - în această stare, memoria RAM (RAM) continuă să fie alimentată și rămâne aproape singura componentă care consumă energie. Deoarece starea sistemului de operare și a tuturor aplicațiilor, documentelor deschise etc. este stocată în RAM, utilizatorul poate relua lucrul exact acolo unde a lăsat-o - starea RAM la întoarcerea din S3 este aceeași ca înainte de a intra în acest mod. (Specificațiile spun că S3 este destul de similar cu S2, doar puțin mai multe componente sunt dezactivate în S3.) S3 are două avantaje față de S4: computerul revine și rulează mai repede și, în al doilea rând, dacă un program rulează (deschide documente etc. .) ) conține informații sensibile, acele informații nu vor fi scrise forțat pe disc. Cu toate acestea, memoria cache a discului poate fi golită pe disc pentru a preveni coruperea datelor dacă sistemul nu se activează, de exemplu din cauza unei căderi de curent;
    • S4 ("Hibernation" (Hibernation) în Windows , "Safe Sleep" în Mac OS X , cunoscut și sub numele de „Suspend to disk", deși specificația ACPI menționează doar termenul S4) - în această stare, întregul conținut al RAM este stocate în memorie nevolatilă, cum ar fi un hard disk: starea sistemului de operare, toate aplicațiile, documentele deschise etc. Aceasta înseamnă că după întoarcerea de la S4, utilizatorul poate relua lucrul de unde a rămas, similar cu S3 modul. Diferența dintre S4 și S3, în afară de timpul suplimentar necesar pentru a muta conținutul RAM pe disc și înapoi, este că o întrerupere a alimentării computerului în S3 va duce la pierderea tuturor datelor din RAM, inclusiv a oricăror documente nesalvate, în timp ce computerul este în S4 nu este afectat de acest lucru. S4 este destul de diferit de alte stări S și seamănă mai mult cu G2 Soft Off și G3 Mechanical Off S1-S3 . Un sistem din S4 poate fi, de asemenea, plasat în G3 Mechanical Off și rămâne în continuare în S4, păstrând informațiile de stare, astfel încât starea de funcționare să poată fi restabilită după pornire.
  • G2 ( S5 ) (soft-off) - oprire soft (software) ; sistemul este complet oprit, dar alimentat, gata de pornire în orice moment. Contextul sistemului a fost pierdut.
  • G3 (oprire mecanică) - oprire mecanică a sistemului; Sursa de alimentare ATX este oprită.

În plus, tehnologia Microsoft OnNow (Extensiile S1-S4 din starea G1). De asemenea, de la Vista, Windows a suportat „Hybrid Sleep”, care combină beneficiile S1/S3 (trezire rapidă) și S4 (protecție împotriva căderilor de curent). Este implementat și în GNU/Linux (pm-suspend-hybrid), o implementare similară în Mac OS X se numește Safe Sleep.

Stări CPU

Există patru stări de funcționare ale procesorului (de la C0 la C3).

  • C0  - mod operațional (de lucru).
  • C1 (cunoscut sub numele de Halt ) este o stare în care procesorul nu execută instrucțiuni, dar poate reveni imediat la o stare de lucru. Unele procesoare, cum ar fi Pentium 4 , acceptă, de asemenea, starea Enhanced C1 (C1E) pentru un consum mai mic de energie.
  • C2 (cunoscut sub numele de Stop-Clock ) este o stare în care procesorul este detectat de aplicații, dar este nevoie de timp pentru a trece la modul operațional.
  • C3 (cunoscut sub numele de Sleep ) este o stare în care procesorul își dezactivează propriul cache, dar este gata să treacă la alte stări.
Stările dispozitivului

Există patru stări de funcționare a altor dispozitive (monitor, modem, autobuze, plăci de rețea, placă video, discuri, dischetă etc.) - de la D0 la D3.

  • D0  - Stare complet operațională, dispozitivul este pornit.
  • D1 și D2  sunt stări intermediare, activitatea este determinată de dispozitiv.
  • D3  - dispozitivul este oprit.
Stări de performanță

În timp ce un procesor sau un dispozitiv rulează (C0 și, respectiv, D0), acesta poate fi în una sau mai multe stări de performanță . Aceste stări sunt specifice implementării. Astfel, P0 este întotdeauna cel mai înalt nivel de performanță; de la P1 la P n o scădere treptată a nivelului de performanță, până la limita de implementare, unde n nu depășește 16.

Stările P sunt cunoscute și ca SpeedStep în procesoarele Intel , cum ar fi PowerNow! sau Cool'n'Quiet în procesoarele AMD și ca LongHaul în procesoarele VIA .

  • P0 performanță și frecvență maximă
  • P1 mai mic decât P0 , tensiune/frecvență tăiată
  • P2 este mai mic decât P1 , tensiunea/frecvența este tăiată
  • Pn mai mic decât P(n-1) , tăiere tensiune/frecvență

Vezi și

Note

  1. Configurație avansată și specificații pentru interfața de alimentare, versiunea 6.2a (PDF). UEFI.org (septembrie 2017). Arhivat din original pe 27 ianuarie 2018.

Link -uri