11.15. Energie- und Ressourcenverwaltung

Verfasst von Hiten Pandya und Tom Rhodes.

Es ist sehr wichtig, Hardware effizient einzusetzen. Vor der Einführung des Advanced Configuration and Power Interface (ACPI) konnten der Stromverbrauch und die Wärmeabgabe eines Systems nur sehr schlecht von Betriebssystemen gesteuert werden. Die Hardware wurde mit BIOS-Funktionen, wie Plug and Play BIOS (PNPBIOS) oder Advanced Power Management (APM), gesteuert. Das Betriebssystem soll aber das System überwachen können und auf Ereignisse, beispielsweise einen unerwarteten Temperaturanstieg, reagieren können.

Dieser Abschnitt erklärt das Advanced Configuration and Power Interface (ACPI). Beachten Sie, dass Sie das ACPI erst ab FreeBSD 5.X als Kernelmodul zur Verfügung steht. In FreeBSD 4.9 können Sie ACPI aktivieren, indem Sie die nachstehende Zeile in die Kernelkonfigurationsdatei aufnehmen und den Kernel neu übersetzen:

device          acpica

11.15.1. Was ist ACPI?

Advanced Configuration and Power Interface (ACPI) ist ein Standard verschiedener Hersteller, der die Verwaltung von Hardware und Energiesparfunktionen festlegt. Die ACPI-Funktionen können von einem Betriebssystem gesteuert werden. Der Vorgänger des ACPI, “Advanced Power Management” (APM), der auch in FreeBSD 4.X verwendet wird, erwies sich in modernen Systemen als unzureichend.

11.15.2. Mängel des Advanced Power Managements (APM)

Das Advanced Power Management (APM) steuert den Energieverbrauch eines Systems auf Basis der Systemaktivität. Das APM-BIOS wird von dem Hersteller des Systems zur Verfügung gestellt und ist auf die spezielle Hardware angepasst. Der APM-Treiber des Betriebssystems greift auf das APM Software Interface zu, das den Energieverbrauch regelt.

Das APM hat hauptsächlich vier Probleme. Erstens läuft die Energieverwaltung unabhängig vom Betriebssystem in einem (herstellerspezifischen) BIOS. Beispielsweise kann das APM-BIOS die Festplatten nach einer konfigurierbaren Zeit ohne die Zustimmung des Betriebssystems herunterfahren. Zweitens befindet sich die ganze APM-Logik im BIOS; das Betriebssystem hat gar keine APM-Komponenten. Bei Problemen mit dem APM-BIOS muss das Flash-ROM aktualisiert werden. Diese Prozedur ist gefährlich, da sie im Fehlerfall das System unbrauchbar machen kann. Zum Dritten ist APM eine Technik, die herstellerspezifisch ist und nicht koordiniert wird. Fehler im BIOS eines Herstellers werden nicht unbedingt im BIOS anderer Hersteller korrigiert. Das letzte Problem ist, dass im APM-BIOS nicht genügend Platz vorhanden ist, um eine durchdachte oder eine auf den Zweck der Maschine zugeschnittene Energieverwaltung zu implementieren.

Das Plug and Play BIOS (PNPBIOS) war ebenfalls unzureichend. Das PNPBIOS verwendet eine 16-Bit-Technik. Damit das Betriebssystem das PNPBIOS ansprechen kann, muss es in einer 16-Bit-Emulation laufen.

Der APM-Treiber von FreeBSD ist in der Hilfeseite apm(4) beschrieben.

11.15.3. Konfiguration des ACPI

Das Modul acpi.ko wird standardmäßig beim Systemstart vom loader(8) geladen und sollte daher nicht fest in den Kernel eingebunden werden. Dadurch kann acpi.ko ohne einen Neubau des Kernels ersetzt werden und das Modul ist leichter zu testen. Wenn Sie in der Ausgabe von dmesg(8) das Wort ACPI sehen, ist das Modul geladen worden. Es ist nicht sinnvoll, das Modul im laufenden Betrieb zu laden, dies kann sogar manchmal fatale Folgen haben. Das Modul kann im laufenden Betrieb nicht entfernt werden, da es zur Kommunikation mit der Hardware verwendet wird. Mit acpiconf(8) können Sie das ACPI konfigurieren (unter anderem können Sie damit auch die Energieverwaltung deaktivieren).

Anmerkung: ACPI und APM können nicht zusammen verwendet werden. Das zuletzt geladene Modul beendet sich, sobald es bemerkt, dass das andere Modul geladen ist.

Mit acpiconf(8) können Sie das System in einen Ruhemodus (sleep mode) versetzen. Es gibt verschiedene Modi (von 1 bis 5), die Sie auf der Kommandozeile mit -s angeben können. Für die meisten Anwender ist der Modus 1 völlig ausreichend. Der Modus 5 schaltet das System aus (Soft-off) und entspricht dem Ausführen des folgenden Befehls:

# halt -p

Weitere Informationen entnehmen Sie bitte der Hilfeseite acpiconf(8).

Wenn Sie Fragen zu FreeBSD haben, schicken Sie eine E-Mail an <de-bsd-questions@de.FreeBSD.org>.
Wenn Sie Fragen zu dieser Dokumentation haben, schicken Sie eine E-Mail an <de-bsd-translators@de.FreeBSD.org>.