ABSTRACT
Tiny energy harvesting sensors that operate intermittently, without batteries, have become an increasingly appealing way to gather data in hard to reach places at low cost. Frequent power failures make forward progress, data preservation and consistency, and timely operation challenging. Unfortunately, state-of-the-art systems ask the programmer to solve these challenges, and have high memory overhead, lack critical programming features like pointers and recursion, and are only dimly aware of the passing of time and its effect on application quality. We present Time-sensitive Intermittent Computing System (TICS), a new platform for intermittent computing, which provides simple programming abstractions for handling the passing of time through intermittent failures, and uses this to make decisions about when data can be used or thrown away. Moreover, TICS provides predictable checkpoint sizes by keeping checkpoint and restore times small and reduces the cognitive burden of rewriting embedded code for intermittency without limiting expressibility or language functionality, enabling numerous existing embedded applications to run intermittently.
- Clang 7 libtooling. https://github.com/llvm-mirror/clang/blob/master/docs/LibTooling.rst, March 2019. Last accessed: Jan. 20, 2020.Google Scholar
- sysname website. https://github.com/tudssl/tics, January 2020. Last accessed: Jan. 16, 2020.Google Scholar
- Saad Ahmed, Muhammad Hamad Alizai, Junaid Haroon Siddiqui, Naveed Anwar Bhatti, and Luca Mottola. Towards smaller checkpoints for better intermittent computing. In Proc. IPSN, pages 132--133, Porto, Portugal, 2018. ACM/IEEE.Google Scholar
- Ala Al-Fuqaha, Mohsen Guizani, Mehdi Mohammadi, Mohammed Aledhari, and Moussa Ayyash. Internet of things: A survey on enabling technologies, protocols, and applications. IEEE Commun. Surveys Tuts., 17(4):2347--2376, Fourth Quarter 2015.Google ScholarDigital Library
- Domenico Balsamo, Alex S. Weddell, Anup Das, Alberto Rodriguez Arreola, Davide Brunelli, Bashir M. Al-Hashimi, Geoff V. Merrett, and Luca Benini. HibernusGoogle Scholar
- : a self-calibrating and adaptive system for transiently-powered embedded devices. IEEE Trans. Comput.-Aided Design Integr. Circuits Syst., 35(12):1968--1980, 2016.Google ScholarDigital Library
- Naveed Bhatti and Luca Mottola. HarvOS: Efficient code instrumentation for transiently-powered embedded devices. In Proc. IPSN, pages 209--219, Pittsburgh, PA, USA, 2017. ACM/IEEE.Google ScholarDigital Library
- John Burgess, Brian Gallagher, David Jensen, and Brian Neil Levine. MaxProp: routing for vehicle-based disruption-tolerant networks. In Proc. INFOCOM, Barcelona, Spain, 2006. IEEE.Google ScholarCross Ref
- An Chen. A review of emerging non-volatile memory (NVM) technologies and applications. Solid-State Electronics, 125:25--38, November 2016.Google ScholarCross Ref
- Alexei Colin and Brandon Lucia. Chain: Tasks and channels for reliable intermittent programs. In Proc. OOPSLA, pages 514--530, Amsterdam, The Netherlands, 2016. ACM.Google ScholarDigital Library
- Alexei Colin and Brandon Lucia. Termination checking and task decomposition for task-based intermittent programs. In Proc. Conference on Compiler Construction, pages 116--127, Vienna, Austria, 2018. ACM.Google ScholarDigital Library
- Alexei Colin, Emily Ruppel, and Brandon Lucia. A reconfigurable energy storage architecture for energy-harvesting devices. In Proc. ASPLOS, pages 767--781, Williamsburg, VA, USA, 2018. ACM.Google ScholarDigital Library
- Adam Dunkels, Bjö rn Grönvall, and Thiemo Voigt. Contiki - a lightweight and flexible operating system for tiny networked sensors. In Proc. LCN, pages 455--462, Tampa, FL, USA, 2004. IEEE.Google ScholarDigital Library
- Salma Elmalaki, Huey-Ru Tsai, and Mani Srivastava. Sentio: Driver-in-the-loop forward collision warning using multisample reinforcement learning. In Proc. SenSys, pages 28--40, Shenzhen, China, 2018. ACM.Google Scholar
- Jakob Eriksson, Lewis Girod, Bret Hull, Ryan Newton, Samuel Madden, and Hari Balakrishnan. The pothole patrol: Using a mobile sensor network for road surface monitoring. In Proc. MobiSys, pages 29--39, New York, NY, USA, 2008. ACM.Google ScholarDigital Library
- A. Fioravanti-Score, Sarah V. Mitchell, and J. Michael Williamson. Use of Satellite Telemetry Technology to Enhance Research and Education in the Protection of Loggerhead Sea Turtles. In Proc. Annual Symp. on Sea Turtle Biology and Conservation, South Padre Island, TX, USA, 1999. NOAA.Google Scholar
- Matthew R. Guthaus, Jeffrey S. Ringenberg, Dan Ernst, Todd M. Austin, Trevor Mudge, and Richard B. Brown. MiBench: A free, commercially representative embedded benchmark suite. In Proc. Workload Characterization Workshop, pages 3--14, Austin, TX, USA, 2001. IEEE.Google ScholarCross Ref
- Josiah Hester, Travis Petersy, Tianlong Yuny, Ronald Petersony, Joseph Skinnery, Bhargav Golla, Kevin Storer, Steven Hearndon, Kevin Freeman, Sarah Lordy, Ryan Haltery, David Kotz, and Jacob Sorber. Amulet: An energy-efficient, multi-application wearable platform. In Proc. SenSys, pages 216--229, Stanford, CA, USA, 2016. ACM.Google ScholarDigital Library
- Josiah Hester and Jacob Sorber. Flicker: Rapid prototyping for the batteryless internet-of-things. In Proc. SenSys, pages 19:1--19:13, Delft, The Netherlands, 2017. ACM.Google Scholar
- Josiah Hester and Jacob Sorber. The future of sensing is batteryless, intermittent, and awesome. In Proc. SenSys, pages 21:1--21:6, Delft, The Netherlands, 2017. ACM.Google ScholarDigital Library
- Josiah Hester, Kevin Storer, and Jacob Sorber. Timely execution on intermittently powered batteryless sensors. In Proc. SenSys, pages 17:1--17:13, Delft, The Netherlands, 2017. ACM.Google ScholarDigital Library
- Josiah Hester, Nicole Tobias, Amir Rahmati, Lanny Sitanayah, Daniel Holcomb, Kevin Fu, Wayne P. Burleson, and Jacob Sorber. Persistent clocks for batteryless sensing devices. ACM Trans. Embed. Comput. Syst., 15(4):77:1--77:28, August 2016.Google ScholarDigital Library
- Matthew Hicks. Clank: Architectural support for intermittent computation. In Proc. ISCA, pages 228--240, Toronto, ON, Canada, 2017. ACM.Google Scholar
- Hrishikesh Jayakumar, Arnab Raha, Woo Suk Lee, and Vijay Raghunathan. Quickrecall: A HW/SW approach for computing across power cycles in transiently powered computers. J. Emerg. Technol. Comput. Syst., 12(1):8:1--8:19, July 2015.Google ScholarDigital Library
- Fredrik Larsson and Bengt-Erik Mellander. Abuse by external heating, overcharge and short circuiting of commercial lithium-ion battery cells. Journal of The Electrochemical Society, 161(10):A1611--A1617, 2014.Google ScholarCross Ref
- Philip Levis, Sam Madden, Joseph Polastre, Rober Szewczyk, Kamin Whitehouse, Alec Woo, David Gay, Jason Hill, Matt Welsh, Eric Brewer, and David Culler. TinyOS: An operating system for sensor networks. In Werner Weber, Jan M. Rabaey, and Emile Aarts, editors, Ambient intelligence, pages 115--148. Springer, Berlin, Germany, 2005.Google ScholarCross Ref
- Hong Lu, Jun Yang, Zhigang Liu, Nicholas D. Lane, Tanzeem Choudhury, and Andrew T. Campbell. The jigsaw continuous sensing engine for mobile phone applications. In Proc. SenSys, pages 71--84, Zürich, Switzerland, 2010.Google ScholarDigital Library
- Brandon Lucia, Vignesh Balaji, Alexei Colin, Kiwan Maeng, and Emily Ruppel. Intermittent computing: Challenges and opportunities. In Proc. SNAPL, pages 8:1--8:14, Alisomar, CA, USA, 2017.Google Scholar
- Brandon Lucia and Benjamin Ransford. A simpler, safer programming and execution model for intermittent systems. In Proc. PLDI, pages 575--585, Portland, OR, USA, 2015. ACM.Google ScholarDigital Library
- Kaisheng Ma, Xueqing Li, Karthik Swaminathan, Yang Zheng, Shuangchen Li, Yongpan Liu, Yuan Xie, John Jack Sampson, and Vijaykrishnan Narayanan. Nonvolatile processor architectures: Efficient, reliable progress with unstable power. IEEE Micro, 36(3):72--83, May/Jun. 2016.Google ScholarCross Ref
- Kaisheng Ma, Yang Zheng, Shuangchen Li, Karthik Swaminathan, Xueqing Li, Yongpan Liu, Jack Sampson, Yuan Xie, and Vijaykrishnan Narayanan. Architecture exploration for ambient energy harvesting nonvolatile processors. In Proc. HPCA, pages 526--537, Burlingame, CA, USA, 2015. IEEE.Google ScholarCross Ref
- Kiwan Maeng, Alexei Colin, and Brandon Lucia. Alpaca: Intermittent execution without checkpoints. In Proc. OOPSLA, pages 96:1--96:30, Vancouver, BC, Canada, 2017. ACM.Google ScholarDigital Library
- Kiwan Maeng, Alexei Colin, and Brandon Lucia. Adaptive dynamic checkpointing for safe efficient intermittent computing. In Proc. OSDI, Carlsbad, CA, USA, 2018. USENIX.Google Scholar
- Sujay Narayana, R. Venkatesha Prasad, Vijay S. Rao, and Chris Verhoeven. SWANS: sensor wireless actuator network in space. In Proc. SenSys, pages 23:1--23:6, Delft, The Netherlands, 2017. ACM.Google Scholar
- Anh Nguyen, Raghda Alqurashi, Zohreh Raghebi, Farnoush Banaei-Kashani, Ann C. Halbower, and Tam Vu. A lightweight and inexpensive in-ear sensing system for automatic whole-night sleep stage monitoring. In Proc. SenSys, pages 230--244, Stanford, CA, USA, 2016. ACM.Google ScholarDigital Library
- M. R. Palac'in and A. de Guibert. Why do batteries fail? Science, 351(6273), 2016.Google Scholar
- Powercast Corp. Powercast hardware development kits website. https://www.powercastco.com/products/development-kits/, 2014. Last accessed: Jan. 20, 2020.Google Scholar
- Amir Rahmati, Mastooreh Salajegheh, Dan Holcomb, Jacob Sorber, Wayne P. Burleson, and Kevin Fu. TARDIS: time and remanence decay in SRAM to implement secure protocols on embedded devices without clocks. In Proc. Security Symposium, pages 36--36, Bellevue, WA, USA, 2012. USENIX.Google Scholar
- Benjamin Ransford and Brandon Lucia. Nonvolatile memory is a broken time machine. In Proc. Workshop on Memory Systems Performance and Correctness, pages 5:1--5:3, Edinburgh, Scotland, 2014. ACM.Google ScholarDigital Library
- Benjamin Ransford, Jacob Sorber, and Kevin Fu. Mementos: System support for long-running computation on RFID-scale devices. In Proc. ASPLOS, Newport Beach, CA, USA, 2011. ACM.Google Scholar
- Alanson P. Sample, Daniel J. Yeager, Pauline S. Powledge, Alexander V. Mamishev, and Joshua R. Smith. Design of an RFID-based battery-free programmable sensing platform. IEEE Trans. Instrum. Meas., 57(11):2608--2615, November 2008.Google ScholarCross Ref
- Mahadev Satyanarayanan, Wei Gao, and Brandon Lucia. The computing landscape of the 21st century. In Proc. HotMobile, pages 45--50, Santa Cruz, CA, USA, 2019. ACM.Google ScholarDigital Library
- Jacob Sorber, Alexander Kostadinov, Matthew Garber, Matthew Brennan, Mark D. Corner, and Emery D. Berger. Eon: A language and runtime system for perpetual systems. In Proc. SenSys, pages 161--174, Sydney, Australia, 2007.Google ScholarDigital Library
- Jethro Tan, Przemysław Pawełczak, Aaron Parks, and Joshua R. Smith. Wisent: Robust downstream communication and storage for computational RFIDs. In Proc. INFOCOM, San Francisco, CA, USA, 2016. IEEE.Google ScholarDigital Library
- Texas Instruments. MSP430FR5994 launchpad development kit. http://www.ti.com/tool/MSP-EXP430FR5994. Last accessed: Jan. 20, 2020.Google Scholar
- Joel Van Der Woude and Matthew Hicks. Intermittent computation without hardware support or programmer intervention. In Proc. OSDI, pages 17--32, Savannah, GA, USA, 2016. ACM.Google Scholar
- Kasim Sinan Yildirim, Amjad Yousef Majid, Dimitris Patoukas, Koen Schaper, Przemysław Pawełczak, and Josiah Hester. InK: Reactive kernel for tiny batteryless sensors. In Proc. SenSys, pages 41--53, Shenzhen, China, 2018. ACM.Google Scholar
- Hong Zhang, Jeremy Gummeson, Benjamin Ransford, and Kevin Fu. MOO: A batteryless computational RFID and sensing platform (technical report um-cs-2011-020). https://web.cs.umass.edu/publication/docs/2011/UM-CS-2011-020.pdf, 2011. Last accessed: Jan. 20, 2020.Google Scholar
- Pei Zhang, Christopher M. Sadler, Stephen A. Lyon, and Margaret Martonosi. Hardware design experiences in ZebraNet. In Proc. SenSys, pages 227--238, Baltimore, MD, USA, 2004. ACM.Google ScholarDigital Library
Index Terms
- Time-sensitive Intermittent Computing Meets Legacy Software
Recommendations
Timely Execution on Intermittently Powered Batteryless Sensors
SenSys '17: Proceedings of the 15th ACM Conference on Embedded Network Sensor SystemsTiny intermittently powered computers can monitor objects in hard to reach places maintenance free for decades by leaving batteries behind and surviving off energy harvested from the environment--- avoiding the cost of replacing and disposing of ...
Energy-Efficient Communications for Improving Timely Progress of Intermittent-Powered BLE Devices
Battery-less devices offer potential solutions for maintaining sustainable Internet of Things (IoT) networks. However, limited energy harvesting capacity can lead to power failures, limiting the system’s quality of service (QoS). To improve timely task ...
The Java legacy interface
JTRES '07: Proceedings of the 5th international workshop on Java technologies for real-time and embedded systemsThe Java Legacy Interface is designed to use Java for encapsulating native legacy code on small embedded platforms. We discuss why existing technologies for encapsulating legacy code (JNI) is not sufficient for an important range of small embedded ...
Comments