InterSloth: Globales Hardware-gesteuertes Scheduling in einem Multikern-Echtzeitbetriebssystem auf RISC-V

For real-time systems, the operating system has the goal to orchestrate the execution of jobs such that the overall operation is completed on time. In order to achieve this goal, real-time operating systems should do as little as possible to minimize the influence on the actual computation.

In previous work on the Sloth research project, we examined the possibility to use the interrupt controller, a unit every microcontroller includes, to offload the scheduling work. Every task is assigned to an interrupt source, which has an priority, and the IRQ controller decides, when to execute which thread.

Unluckily, Sloth is only available as partitioned-multicore operating system. The goal of this thesis is to design and implement a variant of Sloth that uses an IRQ controller to do fixed-priority scheduling with thread migration among multiple processors. Since no IRQ controller is fully compatible with this schema, another goal of this thesis is to modify the QEMU system simulator fir the RISC-V architecture to allow the required IRQ dispatching schema.

ECRTS Conference A
MultiSloth: An Efficient Multi-Core RTOS using Hardware-Based Scheduling
Rainer Müller, Daniel Danner, Wolfgang Schröder-Preikschat, Daniel LohmannProceedings of the 26th Euromicro Conference on Real-Time Systems (ECRTS '14)IEEE Computer Society Press2014.
PDF 10.1109/ECRTS.2014.30 [BibTex]
RTSS Conference A*
Sleepy Sloth: Threads as Interrupts as Threads
Wanja Hofer, Daniel Lohmann, Wolfgang Schröder-PreikschatProceedings of the 32nd IEEE International Symposium on Real-Time Systems (RTSS '11)IEEE Computer Society Press2011.
PDF 10.1109/RTSS.2011.14 [BibTex]
RTSS Conference A*
Sloth: Threads as Interrupts
Wanja Hofer, Daniel Lohmann, Fabian Scheler, Wolfgang Schröder-PreikschatProceedings of the 30th IEEE International Symposium on Real-Time Systems (RTSS '09)IEEE Computer Society Press2009.
PDF 10.1109/RTSS.2009.18 [BibTex]