
2 ABHISHEK SINGH
order of priority is characterized by the existence of a t∈(0, Di] such that rbfi(t)≤t
for all i∈[n], where Diis the relative deadline of the task iand rbfimaps any
tto the maximum amount of work generated by the subsystem [i] in any interval
of length t(Joseph and Pandya,1986;Lehoczky et al.,1989).2An unschedulable
arbitrary-deadline preemptive uniprocessor EDF system with ntasks can also be
characterized by the existence of a t∈(0,lcmj∈[n]Tj] such that dbf(t)> t where Tj
is the period of task jand dbf maps any tto the amount of work generated by the
system in the interval that must be completed in the interval (Baruah et al.,1990b;
Ripoll et al.,1996). We will discuss schedulability conditions, relative deadlines,
constrained deadlines, arbitrary deadlines, rbf, periods and dbf in more detail in
a later section. For now, it suffices to know that the schedulability conditions for
both FP and EDF systems are about the existence of a tin a bounded interval
where some function of tis nonnegative; for FP (resp., EDF) systems, the function
is t7→ t−rbfi(t) (resp., t7→ dbf(t)−t−1).
Given a description of a hard real-time system, the problem of deciding whether
the given system satisfies its timing requirements is called a schedulability problem.
An algorithm that solves a schedulability problem is called a schedulability test.
Given a system, a schedulability test checks whether the appropriate schedulability
condition holds for the system.
An FP schedulability test attempts to find a t∈(0, Di] where rbfi(t)≤t.
There are many algorithmic techniques that can be used to achieve this goal: for
example, we can use fixed-point iteration (Joseph and Pandya,1986;Audsley et al.,
1993), depth-bounded search trees (Manabe and Aoyagi,1998;Bini and Buttazzo,
2004), and continued fractions (Park and Baek,2023). The fixed-point iteration
test is called RTA (response time analysis), and the depth-bounded search tree test
is called HET (hyperplanes exact test). The running times of these tests are, in
general, incomparable: the most significant factor in the worst-case running time
of RTA is Dmax/Tmin where Dmax (resp., Tmin) is the largest deadline (resp., the
smallest period) in the system; the most significant factor in the worst-case running
time of HET is 2#periods. Thus, for hard problem instances where the number of
periods is small but Dmax/Tmin is large, HET will likely outperform RTA; on the
other hand, for hard problem instances where the number of periods is large and
Dmax/Tmin is small, RTA will likely outperform HET.
Similarly, given a system that is not trivially unschedulable an EDF schedulabil-
ity test attempts to find a t∈(0,lcmj∈[n]Tj) such that dbf(t)> t. Many algorith-
mic approaches can be used to search for tincluding fixed-point iteration (Zhang
and Burns,2009b), integer programming in fixed dimension (Baruah et al.,1990a)
(utilizing Lenstra’s algorithm (Lenstra,1983)), and convex-hull computation (Bini,
2019). The fixed-point iteration algorithm is called QPA (quick processor-demand
analysis). As was the case with FP schedulability tests, the running times of EDF
schedulability tests are not comparable, in general: the most significant factor in
the worst-case running time of QPA is lcmj∈[n]Tj/Tmin; the most significant factor
in the worst-case running time of Lenstra’s algorithm is pO(p)where pis the variety
of the system.3Thus, for hard problem instances where the variety is very small
and lcmj∈[n]Tj/Tmin is large, Lenstra’s algorithm will likely outperform QPA; in
2[n] is shorthand for {1,2,...,n}; we assume that [0] = ∅.
3The variety of a synchronous system is the number of distinct deadline-period pairs in the
system (Baruah et al.,2022). Synchronous and asynchronous systems are defined in Section 2.