We argue that controlling energy allocation is an increasingly useful and important feature for operating systems, especially on mobile devices. We present two new low-level ions in the Cinder operating system, reserves and taps, which store and distribute energy for application use. We identify three key properties of control – isolation, delegation, and subdivision – and show how using these abstractions can achieve them. We also show how the architecture of the HiStar information-flow control kernel lends itself well to energy control. We prototype and evaluate Cinder on a
Arjun Roy, Stephen M. Rumble, Ryan Stutsman, Phili