The need for mobile devices with long lasting battery life has become more and more pronounced in an ever-connected world. Both high-tech societies and people living in rural areas with limited power resources can benefit greatly from more power-efficient computing devices. In this paper we provide a methodology for identifying the power efficiency issues and optimizing the power consumption for client platforms running on Linux*-based operating systems. The methods detailed here are applicable to the kernel, drivers, and user-mode software stacks.
Power efficiency has rapidly become a must-have feature for an operating system (OS) that is targeting mobile devices. For example, Windows 8* has improved greatly on its predecessor’s power management capabilities, which allowed for Windows 8*-powered tablets and detachable laptops. Similarly, the Linux* kernel has also been adapted to support many power-efficiency features available in recent mobile platforms and devices. With the recent raging success of smartphones and tablets, Linux*-based operating systems are being optimized for these new battery-constricted platforms. Google’s Android* offering, Ubuntu*, now available more widely on smartphones and tablets, and the new Firefox* OS are three such examples. Intel’s recently released Ultrabook™ brand is blurring the line between handhelds and laptops with many new power saving features that OS, driver, and application developers can utilize.
Solving power management issues and optimizing power efficiency is an iterative process. In this paper we start by outlining the high level methodology, followed by detailed power management analysis and optimization guidance for hardware, kernel, device driver and application stack along with practical examples.
Download Article PDF (2.5MB)
*Other names and brands may be claimed as the property of others.