A Simpler, Safer Programming and Execution Model for Intermittent Systems
Energy harvesting enables novel devices and applications without batteries, but intermittent operation under energy harvesting poses new challenges to memory consistency that threaten to leave applications in failed states not reachable in continuous execution. This paper presents analytical models that aid in reasoning about intermittence. Using these, we develop DINO (Death Is Not an Option), a programming and execution model that simplifies programming for intermittent systems and ensures volatile and nonvolatile data consistency despite near-constant interruptions. DINO is the first system to address these consistency problems in the context of intermittent execution. We evaluate DINO on three energy-harvesting hardware platforms running different applications. The applications fail and exhibit error without DINO, but run correctly with DINO’s modest 1.8-2.7x run-time overhead. DINO also dramatically simplifies programming, reducing the set of possible failure-related control transfers by 5-9x.
Wed 17 JunDisplayed time zone: Tijuana, Baja California change
16:00 - 17:40 | |||
16:00 25mTalk | Zero-Overhead Metaprogramming: Reflection and Metaobject Protocols Fast and without Compromises Research Papers Stefan Marr Inria, France, Chris Seaton Oracle Labs / University of Manchester, Stéphane Ducasse INRIA Lille Media Attached | ||
16:25 25mTalk | Finding Counterexamples from Parsing Conflicts Research Papers Media Attached | ||
16:50 25mTalk | Interactive Parser Synthesis by Example Research Papers Alan Leung University of California, San Diego, John Sarracino University of California, San Diego, Sorin Lerner University of California, San Diego Media Attached | ||
17:15 25mTalk | A Simpler, Safer Programming and Execution Model for Intermittent Systems Research Papers Media Attached |