Advanced Configuration and Power Interface
ACPI (Advanced Configuration and Power Interface) je v informatice označení pro otevřenou specifikaci pro komunikaci jádra operačního systému s hardwarem a naopak, abstrakci funkcí hardwaru a též nahrazení dřívější technologie APM (Advanced Power Management). Jednou z podmnožin funkcí je správa napájení – řízení spotřeby u celé řady mobilních a stolních počítačů, serverů a periferních zařízení.
Historie
Standard ACPI byl vyvinut za vzájemné spolupráce společností Intel, Microsoft a Toshiba v roce 1996. Poslední zveřejněná verze, na které se nově podíleli HP a Phoenix byla vypuštěna 5. dubna 2010 s oznacenim Revision 4.0a. V současné době pracují vývojáři na nové verzi ACPI 5.0.
Návrh
Specifikace byla navržena multiplatformně jak pro 32-bitové procesory architektury x86, tak pro 64bitový procesor Itanium. Není omezena jen na notebooky nebo stolní počítače, její součástí jsou i funkce pro víceprocesorové servery. Součástí ACPI specifikace je i programovací jazyk ASL (ACPI Source Language), jímž je možno programovat obsluhy událostí (event handler) jako je například probuzení počítače za 30 minut a podobně. ASL je překládán pomocí kompilátoru do bytekódu.
ACPI tabulky
Informace o systému jsou zapisovány do samostatných ACPI tabulek:
- RSDP – Root System Description Pointer
- RSDT – Root System Description Table
- DSDT – Differentiated System Description Table
- XSDT – Extended System Description Table
- FADT – Fixed ACPI Description Table
- FACS – Firmware ACPI Control Structure
- SBST – Smart Battery Table
- ECDT – Embedded Controller Boot Resources Table
- MADT – Multiple APIC Description Table
- SRAT – System Resource Affinity Table
- SLIT – System Locality Distance Information Table
- SSDT – Secondary System Descriptor Table
DSDT tabulka je jedna z nejdůležitějších a největších tabulek ACPI. Je součástí BIOSu a operační systém ji načítá při bootování. Zpravidla může DSDT obsahovat chyby (výrobce hlavně zajímá, aby vše fungovalo pod MS Windows).
ACPI stavy
- G0 (Working)
- Normální běh PC, počítač běží a můžete na něm pracovat
- G1 (Sleeping)
- Stav se sníženou spotřebou, nedojde k ukončení běžících programů a k úplnému vypnutí počítače
- S1 (Power on Suspend, POS)
- Stav s vysokou rychlostí uspání i probuzení. CPU běží, ale nevykonává žádné instrukce. Není ukončen běh programů ani ztracena data v paměti. Vypínají se jen některé komponenty – třeba monitor a disky. Spotřeba energie není o mnoho nižší než při normálním běhu. Výpadkem energie dojde ke ztrátě dat.
- S2
- Režim obdobný jako S1, navíc se vypíná také procesor. V praxi se téměř nepoužívá.
- S3 (Suspend to RAM, STR)
- Stav s vysokou rychlostí uspání i probuzení. Všechna data, stav CPU a periférií jsou uchována v operační paměti. Ostatní komponenty včetně zdroje jsou vypnuty. PC ze sítě odebírá pouze napětí 5 V pro udržení obsahu paměti. V tomto režimu se spotřeba počítače pohybuje kolem 5 W a počítač by do něj měl přejít po spuštění „úsporného režimu“. Výpadkem energie dojde ke ztrátě dat.
- S4 (Suspend to Disk, STD)
- „Režim spánku“ neboli hibernace (u MS Windows). Obsah paměti je při přechodu do tohoto stavu uložen do souboru s názvem
hiberfil.sys
na pevném disku. Poté je počítač vypnut (dojde k přepnutí do stavu G2). Nevýhodou je značně delší doba mezi uspáváním a probouzením, o data však při odpojení napájení nepřijdeme. - G2 (Soft Off)
- Tento stav se také někdy označuje jako S5 a nachází se v něm většina vypnutých PC. Zdroj však stále dodává do základní desky napětí o velikosti 5V, počítač tak může být zapnout například pomocí klávesnice nebo ze sítě.
- G3 (Mechanical Off)
- Při odpojení od napájení, v tomto stavu dojde k úplnému vypnutí napájení počítače.
Externí odkazy
- http://www.acpi.info/DOWNLOADS/ACPIspec40a.pdf – Advanced Configuration and Power Interface Specification
- http://www.acpi.info – domácí stránka ACPI
- http://www.intel.com/technology/iapc/acpi/ – stránky o ACPI u firmy Intel
- http://www.acpica.org – Intel's ACPI Component Architecture