Lightweight EDF Scheduling with Deadline Inheritance

By Pierre G. Jansen, Sape J. Mullender, Paul J.M. Havinga and Hans Scholten.

EDFI is a lightweight real-time scheduling protocol that combines EDF with deadline inheritance over shared resources. We will show that EDFI is flexible during a task’s admission control, efficient with scheduling and dispatching, and straightforward in feasibility analysis. The application programmer only needs to specify a task’s timing constraints (deadline, period, runtime) and resource needs, after which EDFI can execute admission control, scheduling, dispatching and resource synchronisation automatically. EDFI avoids gratuitous task switching and its programming overhead as well as runtime overhead is very low, which makes it ideal for lightweight and featherweight kernels. We will illustrate the elegance of the underlying theory and we will shortly discuss the implementation of EDFI in three different operating systems1.

Keywords: preemption, deadline inheritance, feasibility analysis, run-to-completion semantics.