@article{89, keywords = {operating systems, real-time systems}, author = {G. Gracioli and A. Fröhlich and R. Pellizzoni and S. Fischmeister}, title = {Implementation and Evaluation of Global and Partitioned Scheduling in a Real-Time OS}, abstract = {

In this work, we provide an experimental comparison between Global-EDF and Partitioned-EDF, considering the run-time overhead of a real-time operating system (RTOS). Recent works have confirmed that OS implementation aspects, such as the choice of scheduling data structures and interrupt handling mechanisms, impact real-time schedulability as much as scheduling theoretic aspects. However, these studies used real-time patches applied into a general-purpose OS. By measuring the run-time overhead of an RTOS designed from scratch, we show how close the schedulability ratio of task sets is to the theoretical hard real-time schedulability tests. Moreover, we show how a well-designed object-oriented RTOS allows code reuse of scheduling components (e.g., thread, scheduling criteria, and schedulers) and easy real-time scheduling extensions. We compare our RTOS to a real-time patch for Linux in terms of the task set schedulability ratio of several generated task sets. In some cases, Global-EDF considering the overhead of the RTOS is superior to Partitioned-EDF considering the overhead of the patched Linux, which clearly shows how different OSs impact hard real-time schedulers.

}, year = {2013}, journal = {Real-Time Systems}, pages = {1-46}, issn = {0922-6443}, doi = {10.1007/s11241-013-9183-3}, }