A Comprehensive Compiler-assisted Thread Abstraction for Resource-constrained Systems

Alexander Bernauer, Kay Römer

Abstract

While size and complexity of sensor networks software has increased significantly in recent years, the hardware capabilities of sensor nodes have been remaining very constrained. The predominant event-based programming paradigm addresses these hardware constraints, but does not scale well with the growing software complexity, often leading to software that is hard-to-manage and error-prone. Thread abstractions could remedy this situation, but existing solutions in sensor networks either provide incomplete thread semantics or introduce a significant resource overhead. This reflects the common understanding that one has to trade expressiveness for efficiency and vice versa. Our work, however, shows that this trade-off is not inherent to resource-constrained systems. We propose a comprehensive compiler-assisted cooperative threading abstraction, where full-fledged thread-based C code is translated to efficient event-based C code that runs atop an event-based operating system such as Contiki or TinyOS. Our evaluation shows that our approach outperforms thread libraries and generates code that is almost as efficient as hand-written event-based code with overheads of 1% RAM, 2% CPU, and 3% ROM.
OriginalspracheEnglisch
TitelProceedings of the 12th International Conference on Information Processing in Sensor Networks
Seitenumfang12
ErscheinungsortNew York, NY, USA
Herausgeber (Verlag)ACM
Erscheinungsdatum08.04.2013
Seiten167-178
ISBN (Print)978-1-4503-1959-1
DOIs
PublikationsstatusVeröffentlicht - 08.04.2013
Veranstaltung12th International Conference on Information Processing in Sensor Networks - Philadelphia, USA / Vereinigte Staaten
Dauer: 08.04.201311.04.2013
Konferenznummer: 96721

Fingerprint

Untersuchen Sie die Forschungsthemen von „A Comprehensive Compiler-assisted Thread Abstraction for Resource-constrained Systems“. Zusammen bilden sie einen einzigartigen Fingerprint.

Zitieren