TechReport: Power Management

Advanced Configuration and Power Interface soll zukünftig Betriebssystem übergreifend den Zugang zur Hardware erlauben.

Die bekannten Unzulänglichkeiten von APM sind auch an der Industrie nicht spurlos vorüber gegangen. Also setzten sich 1996 Compaq, Intel, Microsoft, Phoenix und Toshiba zusammen und hoben eine neue Spezifikation aus der Taufe: das Advanced Configuration and Power Interface (ACPI). Mittlerweile bei Version 2.0, Revision 1.5 angelangt, definiert ACPI ein umfassendes Interface für die Konfiguration und das Energiemanagement beliebiger Geräte und bügelt die Fehler der Vergangenheit aus.

Endlich plattformunabhängig

ACPI ist eine offene Industrie-Spezifikation, die Standardschnittstellen für Hard- und Software definiert, über die ein Betriebssystem Konfigurations- und Energiemanagement eines Rechners erledigen kann. Die Spezifikation selbst zerfällt also in zwei Teile: auf der einen Seite das in Hardware und BIOS-Implementierte ACPI, auf der anderen Seite die im Betriebssystem implementierten Funktionen – das Operating System directed Power Management (OSPM).

Diese Zweiteilung verdeutlicht eine der wichtigsten Neuerungen, die ACPI gegenüber APM mit sich bringt: Dem BIOS wird die Kontrolle über die Energiesparfunktionen vollständig entzogen. Unter ACPI ist alleine das Betriebssystem für die Energieverwaltung der Geräte zuständig. Doch wozu dann das ACPI BIOS?

Um den Herstellern von Motherboards und Steckkarten sowie anderer direkt am PC angeschlossener Peripheriegeräte ACPI schmackhaft zu machen, verwendet es eine Metasprache zur Identifikation der Devices und ihrer Eigenschaften. Diese ACPI Machine Language (AML) genannte Sprache ist ein Pseudo-Binärcode, der vom ACPI-Treiber des Betriebssystems verstanden wird. Da nun aber kaum ein Entwickler begeistert von der Idee ist, seine Hardware mithilfe kryptischen Binärcodes zu beschreiben, ging man bei der ACPI-Spzifikation noch einen Schritt weiter. ACPI Source Language (ASL) lautet das Zauberwort. Dabei handelt es sich um eine Beschreibungssprache für ACPI-Geräte, die von einem ASL-Compiler in AML übersetzt wird.

ACPI 1
Unter ACPI übernimmt ausschließlich das Betriebssystem die Kontrolle über die Energiesparfunktionen.

Aufgabe des ACPI-BIOS ist es nun, zunächst die vorhandenen Geräte zu ermitteln und diesen anschließend die in ASL abgefassten Informationen zu entlocken. Nach der Wandlung in AML legt das BIOS die Daten in Form von Registern und Tabellen in einem für das Betriebssystem erreichbaren Speicherbereich ab und wartet ab diesem Moment nur noch darauf, dass eventuell neue Geräte während des Betriebs an den Rechner angeschlossen werden.

Die neue Sicht der Dinge

Das eigentliche Management der Geräte übernimmt das Betriebssystem. Gegenüber dem APM-Ansatz, diese Aufgabe dem BIOS zu überlassen, hat das entscheidende Vorteile. Dem Betriebssystem liegen beispielsweise wesentliche bessere Informationen über die laufenden Prozesse vor als dem BIOS. Letzteres kann eigentlich nur anhand von Interrupt-Aktivität entscheiden, ob das System aktiv ist oder nicht. Mit dieser Methode lassen sich jedoch im Hintergrund laufende Serverprozesse nicht immer gesichert erkennen. Schnell ist es da passiert, dass ein System in den Suspend-Modus versetzt wird, obwohl es eigentlich noch aktiv sein sollte. Da das Betriebssystem jedoch über den laufenden Serverprozess „weiß“, wird es den Computer nicht in den Schlafzustand versetzen, sondern sich andere Möglichkeiten zum Sparen von Energie suchen.

Hierbei bietet ACPI einen deutlich flexibleren Katalog an Optionen als APM. Zunächst definiert ACPI vier Grundzustände des Systems, mit G0 bis G3 bezeichnet. G3 ist dabei der Zustand, den das System durch äußeren Einfluss wie etwa einen Stromausfall einnimmt, G2 ist der per Software oder Ausschalter ausgelöste Aus-Zustand. G1 beschreibt den Schlafzustand des Rechners und G0 den Arbeitsmodus.

ACPI 2
ACPI definiert vier verschiedene Zustände des Computers, wobei auch im Arbeitsmodus Stromsparmaßnahmen ergriffen werden können.

Wichtigste Neuerung bei ACPI ist, dass auch im Zustand G0, also dem eigentlichen Arbeitsmodus, bereits Energiesparmaßnahmen eingeleitet werden können. Wartet der Computer beispielsweise lediglich auf Tastatureingaben, kann das Betriebssystem den CPU-Takt drosseln und so nicht nur Energie sparen sondern auch die Lebensdauer des Prozessors verlängern. Gerade nicht benötigte Geräte wie etwa CD-Laufwerk oder aktuell nicht verwendete Festplatten lassen sich stufenweise in verschiedene Zustände niedrigerer Energieaufnahme versetzen.

Da die Steuerung der Energiesparmaßnahmen nicht wie bei APM auf Basis reiner Zeitspannen sondern aufgrund tatsächlicher Aktivität erfolgt, lässt sich ACPI also auch in Servern einsetzen. Besonders für ISPs aber auch für Unternehmen mit einer großen Anzahl an Servern ein sicherlich interessanter Aspekt. Das Management der Energiestufen lässt sich dabei von den Herstellern der jeweils zu steuernden Hardware beeinflussen. Für Peripheriegeräte definiert ACPI vier verschiedene Device-Zustände, D0 bis D3, wobei eine höhere Nummer einen größeren Spareffekt bei gleichzeitig längerer Anlaufzeit bedeutet. Diese Device-Level lassen sich mithilfe von Performace-Zuständen weiter granulieren. Bis zu 16 verschiedene Performance Level darf ein Hardware-Hersteller für sein Gerät festlegen.

Under Construction

So gut sich das alles anhört – einen Haken gibt es doch. Obwohl sich die ACPI-Spezifikation schon in der Version 2.0 befindet, ist sie noch nicht perfekt. Viele Rechner besitzen daher ein BIOS mit ACPI-Funktionen, das aufgrund der unklaren ACPI-Dokumentation nicht mit den Betriebssystem-Treibern zusammen arbeitet. Anfang März 2002 wurde die neuste Revision der ACPI-Spezifikation 2.0 veröffentlicht, die wieder einige Unklarheiten beseitigen soll – doch ob die Mainboard-Hersteller vor allem die BIOS-Versionen älterer Platinen noch auf den aktuellen Stand bringen ist fraglich.

Positives ist dagegen von den Betriebssystemen zu vermelden. Da Intel einen kompletten AML-Interpreter und ACPI-Treiber im Sourcecode unter der GNU Public License zur Verfügung stellt, arbeiten viele Betriebssystemanbieter an der Integration von ACPI in ihre Produkte.

Themenseiten: Mobil, Mobile, Notebooks

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu TechReport: Power Management

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *