Flux Research Group / School of Computing

Efficient Type and Memory Safety for Tiny Embedded Systems

No PDF availalbe

John Regehr, Nathan Cooprider, Will Archer, and Eric Eide

Proceedings of the 3rd Workshop on Programming Languages and Operating Systems (PLOS) 2006.

DOI: 10.1145/1215995.1216001

Operating Systems, Languages, Mobile Networking


We report our experience in implementing type and memory safety in an efficient manner for sensor network nodes running TinyOS: tiny embedded systems running legacy, C-like code. A compiler for a safe language must often insert dynamic checks into the programs it produces; these generally make programs both larger and slower. In this paper, we describe our novel compiler toolchain, which uses a family of techniques to minimize or avoid these run-time costs. Our results show that safety can in fact be implemented cheaply on low-end 8-bit microcontrollers.