Title :
TinyTimber, Reactive Objects in C for Real-Time Embedded Systems
Author :
Lindgren, Per ; Eriksson, Johan ; Aittamaa, Simon ; Nordlander, Johan
Author_Institution :
EISLAB, Lulea Univ. of Technol., Lulea
Abstract :
Embedded systems are often operating under hard real-time constraints. Such systems are naturally described as time-bound reactions to external events, a point of view made manifest in the high-level programming and systems modeling language Timber. In this paper we demonstrate how the Timber semantics for parallel reactive objects translates to embedded real-time programming in C. This is accomplished through the use of a minimalistic Timber Run-Time system, TinyTimber (TT). The TT kernel ensures state integrity, and performs scheduling of events based on given time-bounds in compliance with the Timber semantics. In this way, we avoid the volatile task of explicitly coding parallelism in terms of processes/threads/semaphores/monitors, and side-step the delicate task to encode time-bounds into priorities. In this paper, the TT kernel design is presented and performance metrics are presented for a number of representative embedded platforms, ranging from small 8-bit to more potent 32- bit micro controllers. The resulting system runs on bare metal, completely free of references to external code (even C-lib) which provides a solid basis for further analysis. In comparison to a traditional thread based real-time operating system for embedded applications (FreeRTOS), TT has tighter timing performance and considerably lower code complexity. In conclusion, TinyTimber is a viable alternative for implementing embedded real-time applications in C today.
Keywords :
C language; embedded systems; operating system kernels; C programming; Timber semantics; TinyTimber kernel; embedded systems; explicitly coding parallelism; high-level programming; reactive objects; real-time systems; systems modeling language; time-bound reactions; Embedded system; Kernel; Measurement; Modeling; Operating systems; Parallel programming; Real time systems; Solids; Timing; Yarn;
Conference_Titel :
Design, Automation and Test in Europe, 2008. DATE '08
Conference_Location :
Munich
Print_ISBN :
978-3-9810801-3-1
Electronic_ISBN :
978-3-9810801-4-8
DOI :
10.1109/DATE.2008.4484933