Advanced Configuration and Power Interface (ACPI) è uno standard industriale aperto rilasciato per la prima volta nel dicembre 1996 e sviluppato da HP, Intel, Microsoft, Phoenix e Toshiba. Essa definisce interfacce comuni per il riconoscimento dell'hardware, la configurazione e la gestione energetica di scheda madre e periferiche. Secondo la sua specifica, "L'ACPI è l'elemento chiave nella configurazione e gestione energetica controllata dal Sistema Operativo (OSPM)".
L'ultima revisione della specifica ACPI è la 3.0b, rilasciata il 10 ottobre 2006
Introduzione
L'elemento più importante dello standard, la gestione energetica, ha avuto due miglioramenti importanti. La prima, è l'assegnazione del controllo energetico al Sistema operativo. Questo contrasta con il modello APM che dava il controllo della gestione energetica al BIOS, con interventi limitati dal parte del sistema operativo. Nell'ACPI, il BIOS fornisce al sistema metodi per il controllo a basso livello dei dettagli dell'hardware così che abbia quasi il controllo completo sul risparmio energetico.
L'ACPI inoltre ha portato le funzioni di gestione energetica, precedentemente disponibili solo su PC Portatile anche su PC Desktop e Server. Ad esempio, il sistema può essere portato in stati di consumo energetico estremamente basso, in cui solo la memoria RAM, e spesso nemmeno riceve energia, ma in cui un segnale di input (mouse, tastiera, modem) può velocemente "risvegliare" il sistema stesso.
Lo standard prevede tasti di supporto su normali tastiere per sospendere o spegnere il computer. Alcuni produttori (ASUS, Compaq) hanno esteso questa caratteristica anche ad altri tasti chiamati Power management keys.
L'ACPI richiede hardware compatibile (che includa registri ACPI, definiti dalla specifica). Il sistema operativo, il chipset della motherboard e per alcune funzioni anche la CPU, devono essere progettati per supportarlo.
L'ACPI utilizza il proprio linguaggio macchina (ACPI Machine Language o AML) per implementare handlers di eventi riguardanti il supporto energetico, al posto del linguaggio macchina del sistema ospite. Il codice AML è parte del firmware (BIOS), ma è interpretato dal sistema operativo.
Microsoft Windows ha supportato ACPI per la prima volta con Windows 98. La prima versione di FreeBSD a supportare ACPI fu la 5.0. NetBSD e OpenBSD hanno un minimo supporto per ACPI; Linux, a partire dal kernel 2.4.22, ha iniziato ad offrire il supporto per questo standard.
Stati globali
La specifica ACPI definisce i seguenti sette stati (chiamati stati globali). Un computer che supporta ACPI può trovarsi in:
* G0 (S0) Esecuzione: il normale stato di lavoro di un computer - il sistema operativo e le applicazioni sono in esecuzione. La CPU esegue istruzioni. Da questo stato (anche senza passare al G1), è possibile per processori e periferiche essere ripetutamente portati dentro e fuori stati a basso consumo chiamati C0–Cn e D0–D3. (I portatili, ad esempio, spengono tutte le periferiche non utilizzate quando si alimentano a batteria; alcuni desktop fanno lo stesso per ridurre i rumori.)
* G1 Addormentato Si divide in quattro stati: da S1 a S4. Il tempo necessario per portare il sistema a G0 è molto breve per S1, breve per S2 e S3, lungo per S4.
o S1: La modalità di riposo che richiede più energia. Le cache dei processori sono svuotate, e la CPU non esegue istruzioni. Tuttavia processori e RAM sono accesi; periferiche che non richedono di restare accese possono essere spente. Questa modalità è conosciuta come Power On Standby o semplicemente POS, particolarmente nella schermata di configurazione del BIOS. Le ultime macchine non supportano lo stato S1; computer più vecchi spesso utilizzano S1 al posto di S3.
o S2: uno stato meno dispensivo di energia, dove il processore è spento; comunque, non è implementato spesso.
o S3: conosciuto come Suspend to RAM (STR) nel BIOS, Standby nelle versioni di Windows fino a Windows XP e in alcune distribuzioni di Linux, Sleep in Windows Vista e Mac OS X, anche se la specifica menziona solo i termini S3 e Sleep. In questo stato, la memoria principale (RAM) è ancora accesa, ma è l'unico componente ad esserlo. Siccome lo stato del sistema operativo e tutte le applicazioni, documenti aperti, ecc. risiedono nella RAM, l'utente può riprendere il lavoro dove si trovava quando ha portato il computer in S3. (La specifica menziona che lo stato S3 è molto simile a S2, ma più componenti sono spenti in S3.)
S3 ha due vantaggi su S4; il computer è più veloce a svegliarsi che a riavviarsi, inoltre se un'applicazione contiene dati riservati, non verranno scritti sul disco. Comunque, la cache dei dischi può essere scaricata per prevenire corruzione dei dati nel caso in cui il computer non si risvegli a causa ad esempio di mancanza di corrente.
o S4: Ibernazione in Windows, Safe Sleep in Mac OS X, conosciuto anche come Suspend to disk, anche se nella specifica ACPI è definito solo come S4. In questo stato, tutto il contenuto della main memory è salvato su una memoria non-volatile (Hard Disk) preservando lo stato del sistema e delle applicazione. In questo modo l'utente può riprendere il lavoro così dove lo aveva lasciato esattamente come in S3.
La differenza tra S3 e S4, oltre al fatto di dover caricare e scaricare il contenuto della RAM su Hard Drive, è che un salto della corrente in S3 provoca la perdita di tutti i dati nella memoria principale, mentre un computer in S4 non ha conseguenze. S4 è diverso dagli altri stati S e attualmente somiglia a G2 Soft Off e G3 Mechanical Off più di quanto assomigli a S1–S3. Un sistema in S4 può anche essere portato in G3 (Mechanical Off) e ancora mantenere i dati dello stato di salvataggio S4 in modo da far riprendere il lavoro, dopo il ritorno della corrente.
* G2 (S5) Soft Off-- G2, S5, e Soft Off sono sinonimi. G2 è molto simile a G3 Mechanical Off, ma alcune componenti restano accese, in modo che il computer possa risvegliarsi grazie ad un input da tastiera, orologio, LAN, modem o periferiche USB, modem, LAN, or USB device [1]. Questo stato è simile a G3 Mechanical Off nel fatto in cui deve essere eseguita la procedura di boot per portare il sistema da G2 a G0 Esecuzione. G3 Mechanical Off è lo stato del computer quando c'è mancanza di corrente, mentre G2 è caricato dal sistema operativo (tipicamente quando l'utente richiede lo spegnimento). Il computer non è sicuro da disassemblare a causa delle periferichè attive. È consigliabile togliere la corrente da un PC desktop e aspettare 20 secondi prima di smontare; anche se le periferiche interne non sono generalmente attive, il controller (PS2), le porte USB, la mainboard, le schede di espansione, e l'Alimentatore potrebbero restare accesi anche se il computer non aspetta input da quelle periferiche per il risveglio.
* G3 Mechanical Off: Il consumo di energia del computer è molto vicino allo 0, al punto che si può rimuovere la spina della corrente e smontare il computer (tipicamente solo il real-time clock continua a ricevere energia dalla sua piccola batteria). Il computer cade in questo stato in caso di mancanza di corrente. Una volta che la corrente è ripristinata, è necessario un avvio completo per riportare il sistema da G3 a G0 Esecuzione.
Inoltre uno stato Legacy è definito come lo stato in cui il sistema operativo non supporta ACPI. In questo stato il controllo della corrente non utilizza ACPI.
L'ultima revisione della specifica ACPI è la 3.0b, rilasciata il 10 ottobre 2006
Introduzione
L'elemento più importante dello standard, la gestione energetica, ha avuto due miglioramenti importanti. La prima, è l'assegnazione del controllo energetico al Sistema operativo. Questo contrasta con il modello APM che dava il controllo della gestione energetica al BIOS, con interventi limitati dal parte del sistema operativo. Nell'ACPI, il BIOS fornisce al sistema metodi per il controllo a basso livello dei dettagli dell'hardware così che abbia quasi il controllo completo sul risparmio energetico.
L'ACPI inoltre ha portato le funzioni di gestione energetica, precedentemente disponibili solo su PC Portatile anche su PC Desktop e Server. Ad esempio, il sistema può essere portato in stati di consumo energetico estremamente basso, in cui solo la memoria RAM, e spesso nemmeno riceve energia, ma in cui un segnale di input (mouse, tastiera, modem) può velocemente "risvegliare" il sistema stesso.
Lo standard prevede tasti di supporto su normali tastiere per sospendere o spegnere il computer. Alcuni produttori (ASUS, Compaq) hanno esteso questa caratteristica anche ad altri tasti chiamati Power management keys.
L'ACPI richiede hardware compatibile (che includa registri ACPI, definiti dalla specifica). Il sistema operativo, il chipset della motherboard e per alcune funzioni anche la CPU, devono essere progettati per supportarlo.
L'ACPI utilizza il proprio linguaggio macchina (ACPI Machine Language o AML) per implementare handlers di eventi riguardanti il supporto energetico, al posto del linguaggio macchina del sistema ospite. Il codice AML è parte del firmware (BIOS), ma è interpretato dal sistema operativo.
Microsoft Windows ha supportato ACPI per la prima volta con Windows 98. La prima versione di FreeBSD a supportare ACPI fu la 5.0. NetBSD e OpenBSD hanno un minimo supporto per ACPI; Linux, a partire dal kernel 2.4.22, ha iniziato ad offrire il supporto per questo standard.
Stati globali
La specifica ACPI definisce i seguenti sette stati (chiamati stati globali). Un computer che supporta ACPI può trovarsi in:
* G0 (S0) Esecuzione: il normale stato di lavoro di un computer - il sistema operativo e le applicazioni sono in esecuzione. La CPU esegue istruzioni. Da questo stato (anche senza passare al G1), è possibile per processori e periferiche essere ripetutamente portati dentro e fuori stati a basso consumo chiamati C0–Cn e D0–D3. (I portatili, ad esempio, spengono tutte le periferiche non utilizzate quando si alimentano a batteria; alcuni desktop fanno lo stesso per ridurre i rumori.)
* G1 Addormentato Si divide in quattro stati: da S1 a S4. Il tempo necessario per portare il sistema a G0 è molto breve per S1, breve per S2 e S3, lungo per S4.
o S1: La modalità di riposo che richiede più energia. Le cache dei processori sono svuotate, e la CPU non esegue istruzioni. Tuttavia processori e RAM sono accesi; periferiche che non richedono di restare accese possono essere spente. Questa modalità è conosciuta come Power On Standby o semplicemente POS, particolarmente nella schermata di configurazione del BIOS. Le ultime macchine non supportano lo stato S1; computer più vecchi spesso utilizzano S1 al posto di S3.
o S2: uno stato meno dispensivo di energia, dove il processore è spento; comunque, non è implementato spesso.
o S3: conosciuto come Suspend to RAM (STR) nel BIOS, Standby nelle versioni di Windows fino a Windows XP e in alcune distribuzioni di Linux, Sleep in Windows Vista e Mac OS X, anche se la specifica menziona solo i termini S3 e Sleep. In questo stato, la memoria principale (RAM) è ancora accesa, ma è l'unico componente ad esserlo. Siccome lo stato del sistema operativo e tutte le applicazioni, documenti aperti, ecc. risiedono nella RAM, l'utente può riprendere il lavoro dove si trovava quando ha portato il computer in S3. (La specifica menziona che lo stato S3 è molto simile a S2, ma più componenti sono spenti in S3.)
S3 ha due vantaggi su S4; il computer è più veloce a svegliarsi che a riavviarsi, inoltre se un'applicazione contiene dati riservati, non verranno scritti sul disco. Comunque, la cache dei dischi può essere scaricata per prevenire corruzione dei dati nel caso in cui il computer non si risvegli a causa ad esempio di mancanza di corrente.
o S4: Ibernazione in Windows, Safe Sleep in Mac OS X, conosciuto anche come Suspend to disk, anche se nella specifica ACPI è definito solo come S4. In questo stato, tutto il contenuto della main memory è salvato su una memoria non-volatile (Hard Disk) preservando lo stato del sistema e delle applicazione. In questo modo l'utente può riprendere il lavoro così dove lo aveva lasciato esattamente come in S3.
La differenza tra S3 e S4, oltre al fatto di dover caricare e scaricare il contenuto della RAM su Hard Drive, è che un salto della corrente in S3 provoca la perdita di tutti i dati nella memoria principale, mentre un computer in S4 non ha conseguenze. S4 è diverso dagli altri stati S e attualmente somiglia a G2 Soft Off e G3 Mechanical Off più di quanto assomigli a S1–S3. Un sistema in S4 può anche essere portato in G3 (Mechanical Off) e ancora mantenere i dati dello stato di salvataggio S4 in modo da far riprendere il lavoro, dopo il ritorno della corrente.
* G2 (S5) Soft Off-- G2, S5, e Soft Off sono sinonimi. G2 è molto simile a G3 Mechanical Off, ma alcune componenti restano accese, in modo che il computer possa risvegliarsi grazie ad un input da tastiera, orologio, LAN, modem o periferiche USB, modem, LAN, or USB device [1]. Questo stato è simile a G3 Mechanical Off nel fatto in cui deve essere eseguita la procedura di boot per portare il sistema da G2 a G0 Esecuzione. G3 Mechanical Off è lo stato del computer quando c'è mancanza di corrente, mentre G2 è caricato dal sistema operativo (tipicamente quando l'utente richiede lo spegnimento). Il computer non è sicuro da disassemblare a causa delle periferichè attive. È consigliabile togliere la corrente da un PC desktop e aspettare 20 secondi prima di smontare; anche se le periferiche interne non sono generalmente attive, il controller (PS2), le porte USB, la mainboard, le schede di espansione, e l'Alimentatore potrebbero restare accesi anche se il computer non aspetta input da quelle periferiche per il risveglio.
* G3 Mechanical Off: Il consumo di energia del computer è molto vicino allo 0, al punto che si può rimuovere la spina della corrente e smontare il computer (tipicamente solo il real-time clock continua a ricevere energia dalla sua piccola batteria). Il computer cade in questo stato in caso di mancanza di corrente. Una volta che la corrente è ripristinata, è necessario un avvio completo per riportare il sistema da G3 a G0 Esecuzione.
Inoltre uno stato Legacy è definito come lo stato in cui il sistema operativo non supporta ACPI. In questo stato il controllo della corrente non utilizza ACPI.
Trovato questo articolo interessante? Condividilo sulla tua rete di contatti in Twitter, sulla tua bacheca su Facebook, in Linkedin, Instagram o Pinterest. Diffondere contenuti che trovi rilevanti aiuta questo blog a crescere. Grazie!