"These energy bugs are a silent battery killer," said Y. Charlie Hu, a Purdue University professor of electrical and computer engineering. "A fully charged phone battery can be drained in as little as five hours."
Because conserving battery power is critical for smartphones, the industry has adopted "an aggressive sleep policy," he said.
"What this means is that smartphones are always in a sleep mode, by default. When there are no active user interactions such as screen touches, every component, including the central processor, stays off unless an app instructs the operating system to keep it on."
Various background operations need to be performed while the phone is idle.
"For example, a mailer may need to automatically update email by checking with the remote server," Hu said.
To prevent the phone from going to sleep during such operations, smartphone manufacturers make application programming interfaces, or APIs, available to app developers. The developers insert the APIs into apps to instruct the phone to stay awake long enough to perform necessary operations.
"App developers have to explicitly juggle different power control APIs that are exported from the operating systems of the smartphones," Hu said. "Unfortunately, programmers are only human. They make mistakes when using these APIs, which leads to software bugs that mishandle power control, preventing the phone from engaging the sleep mode. As a result, the phone stays awake and drains the battery."
Findings are detailed in a research paper being presented during the 10th International Conference on Mobile Systems, Applications and Services, or MobiSys 2012, June 25-29 in the United Kingdom. The paper was written by doctoral students Abhinav Pathak and Abhilash Jindal, Hu, and Samuel Midkiff, a Purdue professor of electrical and computer engineering.
The researchers have completed the first systematic study of the no-sleep bugs and have proposed a method for automatically detecting them.
"We've had anecdotal evidence concerning these no-sleep energy bugs, but there has not been any systematic study of them until now," Midkiff said.
The researchers studied 187 Android applications that were found to contain Android's explicit power control APIs, called "wakelocks." Of the 187 apps, 42 were found to contain errors - or bugs - in their wakelock code. Findings showed the new tool accurately detected all 12 previously known instances of no-sleep energy bugs and found 30 new bugs in the apps.
The glitch has been found in interactive apps, such as phone applications and services for telephony on Android that must work even though the user isn't touching the phone. The app may fail to engage the sleep mode after the interactive session is completed.
Smartphone users, meanwhile, don't know that their phones have the bugs.
"You don't see any difference," Hu said. "You put it in your pocket and you think everything is fine. You take it out, and your battery is dead."
To detect bugs in the applications, the researchers modified a tool called a compiler, which translates code written in computer languages into the binary code that computers understand. The tool they developed adds new functionality to the compiler so that it can determine where no-sleep bugs might exist.
"The tool analyzes the binary code and automatically and accurately detects the presence of the no-sleep bugs," Midkiff said.
The Purdue researchers have coined the term "power-encumbered programming" to describe the smartphone energy bugs. Researchers concentrated on the Android smartphone, but the same types of bugs appear to affect other brands, Hu said.
The research has been funded in part by the National Science Foundation. Pathak is supported by an Intel Ph.D. fellowship.Related websites:
Emil Venere | EurekAlert!
New tech for commercial Lithium-ion batteries finds they can be charged 5 times fast
20.02.2018 | University of Warwick
In best circles: First integrated circuit from self-assembled polymer
19.02.2018 | Max-Planck-Institut für Polymerforschung
For the first time, a team of researchers at the Max-Planck Institute (MPI) for Polymer Research in Mainz, Germany, has succeeded in making an integrated circuit (IC) from just a monolayer of a semiconducting polymer via a bottom-up, self-assembly approach.
In the self-assembly process, the semiconducting polymer arranges itself into an ordered monolayer in a transistor. The transistors are binary switches used...
Breakthrough provides a new concept of the design of molecular motors, sensors and electricity generators at nanoscale
Researchers from the Institute of Organic Chemistry and Biochemistry of the CAS (IOCB Prague), Institute of Physics of the CAS (IP CAS) and Palacký University...
For photographers and scientists, lenses are lifesavers. They reflect and refract light, making possible the imaging systems that drive discovery through the microscope and preserve history through cameras.
But today's glass-based lenses are bulky and resist miniaturization. Next-generation technologies, such as ultrathin cameras or tiny microscopes, require...
Scientists from the University of Zurich have succeeded for the first time in tracking individual stem cells and their neuronal progeny over months within the intact adult brain. This study sheds light on how new neurons are produced throughout life.
The generation of new nerve cells was once thought to taper off at the end of embryonic development. However, recent research has shown that the adult brain...
Theoretical physicists propose to use negative interference to control heat flow in quantum devices. Study published in Physical Review Letters
Quantum computer parts are sensitive and need to be cooled to very low temperatures. Their tiny size makes them particularly susceptible to a temperature...
15.02.2018 | Event News
13.02.2018 | Event News
12.02.2018 | Event News
20.02.2018 | Power and Electrical Engineering
20.02.2018 | Materials Sciences
20.02.2018 | Life Sciences