Hardware Reference
In-Depth Information
τ
1
τ
2
τ
3
0
3
6
9
12
15
18
(a)
deadline miss
τ
1
τ
2
τ
3
0
3
6
9
12
15
18
(b)
Figure 2.25
Scheduling anomaly in the presence of non-preemptive tasks: task
τ
1
meets
its deadline when the processor is executing at speed
S
1
(a), but misses its deadline when
the speed is doubled (b).
ANOMALIES USING A DELAY PRIMITIVE
Another timing anomaly can occur when tasks using shared resources explicitly sus-
pend themselves through a
delay
(
T
) system call, which suspends the execution of the
calling task for
T
units of time. Figure 2.26a shows a case in which
τ
1
is feasible and
has a slack time of 6 units when running at the highest priority, suggesting that it could
easily tolerate a delay of two units. However, if
τ
1
executes a
delay
(2) at time
t
=2,
it gives the opportunity to
τ
2
to lock the shared resource. Hence, when
τ
1
resumes,
it has to block on the semaphore for 7 units, thus missing its deadline, as shown in
Figure 2.26b.
Search WWH ::
Custom Search