Title :
Sloth: Threads as Interrupts
Author :
Hofer, Wanja ; Lohmann, Daniel ; Scheler, Fabian ; Schroder-Preikschat, Wolfgang
Author_Institution :
Friedrich-Alexander Univ. Erlangen-Nuremberg, Erlangen, Germany
Abstract :
Traditional operating systems differentiate between threads, which are managed by the kernel scheduler, and interrupt handlers, which are scheduled by the hardware. This approach is not only asymmetrical in its nature, but also introduces problems relevant to real-time systems because low-priority interrupt handlers can interrupt high-priority threads. We propose to internally design all threads as interrupts, thereby simplifying the managed control-flow abstractions and letting the hardware interrupt subsystem do most of the scheduling work. The resulting design of our very light-weight Sloth system is suitable for the implementation of a wide class of embedded real-time systems, which we describe with the example of the OSEK-OS specification. We show that the design conciseness has a positive impact on the system performance, its memory footprint, and its overall maintainability.
Keywords :
operating system kernels; real-time systems; scheduling; OSEK-OS specification; control-flow abstractions; hardware interrupt subsystem; interrupt handlers; kernel scheduler; light-weight Sloth system; memory footprint; operating systems; real-time systems; Control systems; Coprocessors; Delay; Hardware; Kernel; Operating systems; Real time systems; System performance; Testing; Yarn; Embedded Systems; Infineon TriCore; Interrupt Handling; OSEK; Operating Systems; Priority-Driven Scheduling; Real-Time Systems; Thread Management;
Conference_Titel :
Real-Time Systems Symposium, 2009, RTSS 2009. 30th IEEE
Conference_Location :
Washington, DC
Print_ISBN :
978-0-7695-3875-4
DOI :
10.1109/RTSS.2009.18