Power Management

From ThinkWiki
Jump to: navigation, search

The term Power Management is usually used as a referrer to the three basic functionalities enabling notebooks to save battery life when the user is not using it for some time: Screen Blanking (Standby mode), Suspend to RAM (Sleep mode) and Suspend to Disk (Hibernation mode). But Power Management in fact covers much more, especially it also covers a lot of useful functionalities to save power while the user is working with the notebook when it's on battery. Most importantly these are Dynamic Frequency Scaling, also known as SpeedStep, the Power Mangement functions of the builtin harddrive and display related Power Mangement.

An ideally configured notebook would scale the processors (and also the graphics chips) frequency according to its use, spin down the harddrive if it's not needed anymore (and try to achieve such times a lot), shut down or suspend unused hardware components, maybe dim the LCD panel when on battery and of course put itself to sleep when the user doesn't do anything for a certain amount of time.

To make Power Management work, it highly relies on a message exchange (or event notification) system between the hardware (the notebook) and the software (the running OS). The classic solution for this is the APM (Advanced Power Management) system which leaves the big part of control to the BIOS. But over time this solution turned out to lack flexibility and so ACPI was developed, which is now widely preferred in modern notebooks. With ACPI the BIOS is basically only taking care of sending hardware events (like button triggers) to the OS or recieving software events and making the hardware react on that. All else (like the actual saving of the OS' state on suspends or processor speed control) is left to the operating system itself, enabling a great amount of flexibility and configurability.