Batteryless energy harvesting devices are computing platforms that operate in environments where batteries are not viable for energy storage. Energy-harvesting devices operate intermittently, only as energy is available. Prior work developed software execution models robust to intermittent power failures but no existing intermittent execution model allows interrupts to update global persistent state without allowing incorrect behavior or requiring complex programming. We present Coati, a system that supports event-driven concurrency via interrupts in an intermittent software execution model. Coati exposes a task-based interface for synchronous computations and an event interface for asynchronous interrupts. Coati supports synchronizing tasks and events using transactions, which allow for multi-task atomic regions that extend across multiple power failures. This work explores two different models for serializing events and tasks that both safely provide intuitive semantics for event-driven intermittent programs. We implement a prototype of Coati as C language extensions and a runtime library. Using energy-harvesting hardware, we evaluate Coati on benchmarks adapted from prior work. We show that Coati prevents failures when interrupts are introduced, while the baseline fails in just seconds. Moreover, Coati operates with a reasonable run time overhead that is often comparable to an idealized baseline.
Wed 26 JunDisplayed time zone: Tijuana, Baja California change
10:00 - 11:00 | |||
10:00 20mTalk | Simple and Precise Static Analysis of Untrusted Linux Kernel Extensions PLDI Research Papers Elazar Gershuni Tel Aviv University, Nadav Amit , Arie Gurfinkel University of Waterloo, Nina Narodytska VMWare Research, Jorge A. Navas SRI International, Noam Rinetzky Tel Aviv University, Leonid Ryzhyk VMware Research, Mooly Sagiv Tel Aviv University Link to publication DOI Media Attached | ||
10:20 20mTalk | Transactional Concurrency for Intermittent Systems PLDI Research Papers Media Attached | ||
10:40 20mTalk | Supporting Peripherals in Intermittent Systems with Just-In-Time Checkpoints PLDI Research Papers Media Attached |