The Case For Non-preemptive, Deadline-driven Scheduling In Real-time Embedded Systems
Michael Short · TeesRep (Teesside University) · 2010
Non-preemptive schedulers remain a very popular choice for practitioners of resource constrained real-time embedded systems. This paper is concerned with the non-preemptive version of the Earliest Deadline First algorithm (npEDF). Although several key results indicate that npEDF should be considered a viable choice for use in resource-constrained real-time systems, these systems have traditionally been implemented using static, table-driven approaches such as the 'cyclic executive'. This is perhaps due to several popular misconceptions regarding the basic operation, optimality and robustness of the npEDF algorithm, leading to a general lack of coverage in the wider academic community. This paper will attempt to redress this balance by showing that the supposed 'problems' attributed to npEDF either simply do not hold, or can be easily overcome by adopting an appropriate implementation. Examples are given to highlight the fact that npEDF generally outperforms other non-preemptive software architectures when scheduling periodic and sporadic tasks. The paper concludes with the observation that npEDF should in fact be considered as the algorithm of choice for such systems.