Resource reservation for real-time self-suspending tasks

Alessandro Biondi, Alessio Balsini, Mauro Marinoni · 2015

Nowadays, the real-time domain cannot neglect modern hardware architectures and the programming paradigms developed to fully exploit their capabilities. This has shown the limitations of classical task models, like the periodic one proposed by Liu&Layland, and it is pushing for the adoption of more realistic task models and the development of new schedulability analyses to guarantee their timing constraints. Self-suspending tasks are representative of enhanced task models considering explicit suspensions of the execution, happening when a task has to interact with an external device (e.g., through I/O operations) or to access shared resources. Real-time analysis of such a task model cannot neglect to take also into account temporal isolation techniques like bandwidth reservations and hypervisors, required to manage the complexity of actual software and the need of a modular development. In this paper we present a novel scheduling algorithm (H-CBS-SO) that provides temporal isolation for real-time self-suspending tasks. We also propose the implementation of this algorithm in the Linux kernel. Finally, experimental results are presented aiming at evaluating the performance of the implementation in terms of run-time overhead.

Read the paper · More papers on PaperTik