Integrating concurrency control and energy management in device drivers

Energy management is a critical concern in wireless sensornets. Despite its importance, sensor network operating systems today provide minimal energy management support, requiring applications to explicitly manage system power states. To address this problem, we present ICEM, a device driver architecture that enables simple, energy efficient wireless sensornet applications. The key insight behind ICEMis that the most valuable information an application can give the OS for energy management is its concurrency. Using ICEM, a low-rate sensing application requires only a single line of energy management code and has an efficiency within 1.6% of a hand-tuned implementation. ICEM's effectiveness questions the assumption that sensornet applications must be responsible for all power management and sensornets cannot have a standardized OS with a simple API.

[1]  George C. Necula,et al.  Capriccio: scalable threads for internet services , 2003, SOSP '03.

[2]  David E. Culler,et al.  The nesC language: A holistic approach to networked embedded systems , 2003, PLDI.

[3]  Frank Bellosa,et al.  Cooperative I / O-- A Novel I / O Semantics for Energy-Aware Applications , 2003 .

[4]  Klara Nahrstedt,et al.  Energy-efficient soft real-time CPU scheduling for mobile multimedia systems , 2003, SOSP '03.

[5]  Mani B. Srivastava,et al.  Design considerations for solar energy harvesting wireless embedded systems , 2005, IPSN 2005. Fourth International Symposium on Information Processing in Sensor Networks, 2005..

[6]  Fred Douglis,et al.  Adaptive Disk Spin-Down Policies for Mobile Computers , 1995, Comput. Syst..

[7]  Robert Geist,et al.  A continuum of disk scheduling algorithms , 1987, TOCS.

[8]  David E. Culler,et al.  Versatile low power media access for wireless sensor networks , 2004, SenSys '04.

[9]  Philip Levis,et al.  Policies for dynamic clock scheduling , 2000, OSDI.

[10]  Darrell D. E. Long,et al.  A dynamic disk spin-down technique for mobile computing , 1996, MobiCom '96.

[11]  David E. Culler,et al.  Mica: A Wireless Platform for Deeply Embedded Networks , 2002, IEEE Micro.

[12]  Guang R. Gao,et al.  Implementation of the EARTH programming model on SMP clusters: a multi‐threaded language and runtime system , 2003, Concurr. Comput. Pract. Exp..

[13]  Steve R. Kleiman,et al.  SunOS Multi-thread Architecture , 1991, USENIX Winter.

[14]  Amin Vahdat,et al.  ECOSystem: managing energy as a first class operating system resource , 2002, ASPLOS X.

[15]  Wei Hong,et al.  Proceedings of the 5th Symposium on Operating Systems Design and Implementation Tag: a Tiny Aggregation Service for Ad-hoc Sensor Networks , 2022 .

[16]  Amin Vahdat,et al.  Currentcy: A Unifying Abstraction for Expressing Energy Management Policies , 2003, USENIX Annual Technical Conference, General Track.

[17]  Robert Szewczyk,et al.  System architecture directions for networked sensors , 2000, ASPLOS IX.

[18]  Kevin Klues,et al.  Power Management of Non-Virtualised Devices , 2007 .

[19]  Jeff Rose,et al.  MANTIS: system support for multimodAl NeTworks of in-situ sensors , 2003, WSNA '03.

[20]  Peter Desnoyers,et al.  Ultra-low power data storage for sensor networks , 2009, TOSN.

[21]  Alvin R. Lebeck,et al.  Power aware page allocation , 2000, SIGP.

[22]  Maurice Herlihy,et al.  Dynamic-sized lock-free data structures , 2002, PODC '02.

[23]  Mani B. Srivastava,et al.  A dynamic operating system for sensor nodes , 2005, MobiSys '05.

[24]  John Anderson,et al.  An analysis of a large scale habitat monitoring application , 2004, SenSys '04.

[25]  Carl Staelin,et al.  Idleness is Not Sloth , 1995, USENIX.

[26]  Hal Wasserman,et al.  Comparing algorithm for dynamic speed-setting of a low-power CPU , 1995, MobiCom '95.

[27]  E. Jovanov,et al.  An environment for runtime power monitoring of wireless sensor network platforms , 2005, Proceedings of the Thirty-Seventh Southeastern Symposium on System Theory, 2005. SSST '05..

[28]  Michael Franz,et al.  Power reduction techniques for microprocessor systems , 2005, CSUR.

[29]  David E. Culler,et al.  Perpetual environmentally powered sensor networks , 2005, IPSN 2005. Fourth International Symposium on Information Processing in Sensor Networks, 2005..

[30]  W. Archer,et al.  Interface Contracts for TinyOS , 2007, 2007 6th International Symposium on Information Processing in Sensor Networks.

[31]  Wei Hong,et al.  A macroscope in the redwoods , 2005, SenSys '05.

[32]  Adam Dunkels,et al.  Contiki - a lightweight and flexible operating system for tiny networked sensors , 2004, 29th Annual IEEE International Conference on Local Computer Networks.

[33]  GayDavid,et al.  Integrating concurrency control and energy management in device drivers , 2007 .

[34]  Krisztián Flautner,et al.  Vertigo: Automatic Performance-Setting for Linux , 2002, OSDI.

[35]  David E. Culler,et al.  Telos: enabling ultra-low power wireless research , 2005, IPSN 2005. Fourth International Symposium on Information Processing in Sensor Networks, 2005..

[36]  C. A. R. Hoare,et al.  Monitors: an operating system structuring concept , 1974, CACM.