Sloth: Threads as Interrupts

  • Authors:
  • Wanja Hofer;Daniel Lohmann;Fabian Scheler;Wolfgang Schröder-Preikschat

  • Affiliations:
  • -;-;-;-

  • Venue:
  • RTSS '09 Proceedings of the 2009 30th IEEE Real-Time Systems Symposium
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

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.