Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Specifikace ACPI 6.3 definuje sadu objektů oboru názvů pro určení informací o napájení pro zařízení. Například jedna sada objektů může určit zdroje napájení, které zařízení vyžaduje v každém podporovaném stavu napájení zařízení. Jiný typ objektu může popsat schopnost zařízení probudit se z nízkého stavu napájení v reakci na hardwarové události.
Řízení spotřeby zařízení ve Windows
Zatímco je systém spuštěný (to znamená, že systém je v pracovním stavu definovaném rozhraním ACPI, S0), můžou jednotlivá zařízení provádět přechody mezi stavy napájení zařízení v závislosti na aktivitě a ušetřit tak energii. V tradičních počítačových systémech se k úsporě energie používají také stavy spánku definované rozhraníM ACPI (S1 až S4), ale tyto odpojené stavy režimu spánku s vysokou latencí se na platformách Windows SoC nepoužívají. Životnost baterie je proto vysoce závislá na tom, jak platformy implementují řízení spotřeby zařízení za běhu.
Zařízení integrovaná do SoC je možné spravovat prostřednictvím rozhraní Windows Power Framework (PoFx). Tato zařízení integrovaná s frameworkem jsou řízena PoFx prostřednictvím plug-in modulu specifického pro konkrétní SoC (microPEP), který zná specifika napájení a řízení hodin SoC. Další informace o PoFx naleznete v tématu Přehled architektury řízení spotřeby.
V případě periferních zařízení, která nejsou integrovaná do SoC, používá Systém Windows řízení spotřeby zařízení ACPI. U těchto zařízení spravovaných rozhraním ACPI vlastník zásady napájení v zásobníku ovladačů zařízení (obvykle funkce nebo ovladač třídy) provádí rozhodnutí o přechodu stavu napájení zařízení a ovladač AKTI systému Windows Acpi.sysvyvolá metody řízení ASL, které použijí požadované ovládací prvky napájení specifické pro platformu.
Je možné použít řízení spotřeby zařízení ACPI samostatně, nebo v kombinaci s mikroPEP pro řízení spotřeby zařízení na SoC, což některé zásobníky zařízení dělají.
Jak je popsáno v tématu Řízení spotřeby zařízení v ACPI, Systém Windows podporuje možnosti řízení spotřeby D3cold, které jsou definovány ve specifikaci ACPI 5.0. Díky této podpoře mohou zařízení, platformy a ovladače zvolit možnost úplného odstranění napájení zařízení během nečinnosti v době běhu. Tato schopnost může výrazně zlepšit životnost baterie. Odebrání napájení však musí být podporováno všemi ovlivněnými komponentami, aby se mohly úspěšně vrátit k D0. Z tohoto důvodu musí ovladače (autobus a funkce) i samotná platforma znamenat, že ji podporují. Další informace o souhlasu ovladače D3cold naleznete v tématu Podpora D3cold v ovladači.
Řízení spotřeby zařízení v ACPI
Zařízení namespace podporují až čtyři stavy napájení zařízení, číslované D0 (plná funkce nebo "zapnuto") až D3 (žádná funkce nebo "vypnuto"). Každý stav může mít jiné požadavky na napájení, přičemž stavy s vyšším číslem spotřebovávají méně energie než stavy s nižším číslem. Kromě toho má stav D3 (off) dva podstavy, D3hot a D3cold. Podstav D3hot vyžaduje, aby zařízení zůstalo dostupné ve své nadřazené sběrnici, aby mohlo reagovat na softwarové příkazy specifické pro sběrnici. Tento požadavek a energie použitá k jeho splnění je odstraněna v D3cold. Nakonec se zařízení může připravit, aby se probudilo ze stavu nízkého výkonu kvůli hardwarové události, a v případě potřeby také přivedlo platformu z nečinného stavu.
Platforma indikuje svou podporu pro D3cold tím, že při vyžádání předá operačnímu systému kontrolu nad funkcí "_PR3 Support" (bit 2) prostřednictvím platformově široké metody schopností OSPM. Další informace najdete ve specifikaci ACPI 5.0 v části 6.2.10.2, "Možnosti OSPM pro celou platformu".
Zařízení s řízeným napájením používají podřízené objekty k popisu možností napájení operačnímu systému. Následující části popisují tyto funkce a objekty.
Zdroje a stavy napájení
Zařízení deklaruje podporu stavu napájení výpisem sady zdrojů napájení, které vyžaduje, aby bylo v daném stavu. Zdroje napájení ACPI představují napěťové kolejnice, které dají napájení zařízení, a hodinové signály, které je řídí. Tyto prostředky jsou deklarovány v kořenu oboru názvů. Každý zdroj napájení má _ON a metodu _OFF, prostřednictvím které je řízena, a metodu _STA, která hlásí svůj stav. Další informace naleznete v části 7.1 deklarování objektu zdroje napájení specifikace ACPI 5.0.
Ovladač ACPI systému Windows, Acpi.sys, monitoruje závislosti napájení mezi zařízeními, která sdílejí prostředky, a při přechodu těchto zařízení mezi stavy napájení zajišťuje, že jsou v každém konkrétním okamžiku zapnuté pouze zdroje napájení, které zařízení skutečně potřebuje.
Požadavky na zdroje napájení (_PRx)
Pro každý podporovaný stav napájení zařízení existuje objekt Požadavky na zdroje napájení (_PRx), kde x = 0, 1, 2 nebo 3. Když se ovladač zařízení rozhodne přejít na nový stav napájení, Acpi.sys zajistí, že všechny zdroje napájení potřebné pro nový stav jsou zapnuté a že všechny prostředky, které se již nepoužívají, jsou vypnuté.
| Podporovaný stav zařízení | Objekt požadavků na prostředky, který se má použít | Prostředky, které se mají zahrnout do objektu požadavků |
|---|---|---|
| D0 (povinné) | _PR0 | Veškeré napájení a hodiny vyžadované pro plnou funkci zařízení. |
| D1 | _PR1 | Veškeré napájení nebo hodiny vyžadované pro omezenou funkčnost tohoto stavu definované třídou. |
| D2 | _PR2 | Veškeré napájení nebo časování vyžadované pro stav s omezenou funkčností, jak je definováno třídou. |
| D3hot (povinné) | _PR3 | Na sběrnici se zobrazí jenom napájení nebo hodiny potřebné k tomu, aby se zařízení zobrazilo ve sběrnici a reagovalo na příkaz specifický pro sběrnici. |
Pokud určitá platforma podporuje funkci D3cold a ovladač zařízení se rozhodne pro D3cold, _PR3 zdroje napájení zařízení budou, pokud je nepoužívá žádné jiné zařízení, po přechodu na D3cold vypnuty.
Další informace o požadavcích na zdroje napájení pro zařízení, které podporuje D3cold, naleznete v tématu Požadavky firmwaru pro D3cold.
Stav napájení zařízení (_PSx)
Existuje metoda Power State, _PSx, kde x = 0, 1, 2 nebo 3, pro každý podporovaný stav napájení zařízení Dx. Tato metoda je nepovinná, ale pokud je k dispozici, vyvolá se před vypnutím zdrojů napájení pro stav a po zapnutí zdrojů napájení pro stav. _PSx je určená k provedení jakýchkoli akcí specifických pro platformu vyžadovaných v rámci cyklu napájení. _PSx nesmí přistupovat k registrům zařízení přiřazeným k ovladači funkce, přistupovat ke standardním registrům sběrnice, které jsou přiřazeny k ovladači sběrnice, nebo zapnout nebo vypnout zdroje napájení, což je operace vyhrazená pro Acpi.sys.
Funkce probuzení
Zařízení spravovaná napájením můžou rozpoznat události, když jsou ve stavu nízkého výkonu, a způsobit, že se platforma probudí, aby je zvládla. Aby bylo možné tuto funkci povolit, potřebuje Systém Windows informace o možnostech platformy i zařízení.
Stav probuzení zařízení Sx (_SxW)
Na dané platformě existuje specifické mapování mezi stavy zařízení, které podporují funkce probuzení a stavy systému, které můžou reagovat na události probuzení. Rozhraní ACPI definuje _SxW objekt, který poskytuje tyto informace operačnímu systému. Pro každý podporovaný stav napájení systému existuje objekt SxW, Sx. Vzhledem k tomu, že platformy SoC jsou vždy v S0, jediný objekt zájmu zde je _S0W. Tento objekt určuje schopnost platformy probudit se ze stavu nečinnosti s nízkou spotřebou v reakci na signál probuzení zařízení. Objekt používá Systém Windows k určení cílového stavu D pro zařízení během nečinnosti systému s nízkým výkonem. Další informace o _S0W najdete ve specifikaci ACPI 5.0 v části 7.2.20 "_S0W (stav probuzení zařízení S0)".
U většiny platforem SoC jsou zařízení při nečinnosti agresivně řízena do stavu D3 a systém je schopný probudit se z režimu nízké spotřeby, když je zařízení v tomto stavu. Pro takový systém _S0W objekt vrátí hodnotu 3 (nebo 4, pokud podporuje také D3cold).
_S0W(4) je požadavek pro D3Cold bez ohledu na to, zda zařízení podporuje probuzení.
Jakýkoli stav D lze určit jako stav s nejnižší spotřebou energie, který umožňuje probuzení, a některé třídy zařízení nebo sběrnice používají různé hodnoty. Například zařízení připojená přes SDIO a USB používají pro tento stav stav D2.
Aby bylo možné usnadnit migraci ovladačů zařízení z Windows 7 do Windows 8 nebo Windows 8.1, může být vaše zařízení také nutné k poskytování _S4W. V současné době jedinou třídou zařízení, která má tento požadavek, je síť (Ndis.sys).
Přerušení schopná probuzení (_CRS)
Popis prostředku pro zařízení uvádí, že zařízení je schopné rozpoznat a signalizovat událost probuzení označením přerušení jako "wake-capable" (buď ExclusiveAndWake nebo SharedAndWake). Ovladače systému Windows a zařízení poskytují zvláštní zpracování takových přerušení, aby se zajistilo, že jsou povolené, když zařízení přejde do stavu s nízkou spotřebou. Pro více informací viz popisy deskriptorů zdrojů Přerušení a GpioInt v sekci 6.4.3.6, "Rozšířený deskriptor přerušení", a sekci 6.4.3.8.1, "Deskriptory připojení GPIO" specifikace ACPI 5.0.
Povolení probuzení
V závislosti na uživatelském scénáři nebo systémových zásadách mohou být zařízení schopná probuzení nebo nemusí být ve skutečnosti připravená k probuzení. Proto mohou být povolená, ale také nemusí být, přerušení podporující probuzení, když je zařízení nečinné. Kromě povolení přerušení používá Windows následující mechanismy k povolení probuzení zařízení.
Probuzení zařízení ze spánku (_DSW)
ACPI definuje objekt _DSW jako způsob, jak operační systém informovat firmware platformy ACPI o příštím spánkovém režimu nebo období úsporného režimu. Tento objekt je volitelný a používá se pouze v případě, že platforma musí předem nakonfigurovat hardware probuzení specifický pro platformu. K dispozici je cílový stav D pro zařízení a cílový stav S pro systém. Kombinace D-stavu a S-stavu bude vždy v souladu s informacemi poskytnutými objekty _SxW zařízení.
Zdroje napájení pro probuzení (_PRW)
V některých případech musí být zapnuté další zdroje napájení, aby zařízení umožnilo probuzení. V tomto případě může zařízení poskytnout objekt _PRW, který zobrazí seznam dalších zdrojů napájení. Ovladač WINDOWS ACPI, Acpi.sys, bude spravovat tyto napájecí prostředky, jak je obvyklé, a zajistí, že jsou zapnuté, kdykoliv je to potřebné pro zařízení (tj. zařízení s podporou probuzení), a jinak jsou vypnuté.
_PRW slouží také k definování funkce probuzení pro tradiční počítače (hardware full-ACPI).