Hardware Reference
In-Depth Information
D
i
π
i
μ
i
(
R
1
)
μ
i
(
R
2
)
μ
i
(
R
3
)
τ
1
5
3
1
0
1
τ
2
10
2
2
1
3
τ
3
20
1
3
1
1
Table 7.3
Task parameters and resource requirements.
C
R
(3)
C
R
(2)
C
R
(1)
C
R
(0)
R
1
0
1
2
3
R
2
-
-
0
2
R
3
0
2
2
3
Table 7.4
Resource ceilings as a function of the number of available units. Dashes identify
impossible cases.
units of
R
k
that are currently available. That is,
C
R
k
(
n
k
)=max
{
π
i
|
μ
i
(
R
k
)
>n
k
}
.
If all units of
R
k
are available, that is, if
n
k
=
N
k
, then
C
R
k
(
N
k
)=0.
To better clarify this concept, consider the following example, where three tasks (
τ
1
,
τ
2
,
τ
3
) share three resources (
R
1
,
R
2
,
R
3
), consisting of three, one, and three units,
respectively. All tasks parameters - relative deadlines, preemption levels, and resource
requirements - are shown in Table 7.3.
Based on these requirements, the current ceilings of the resources as a function of
the number
n
k
of available units are reported in Table 7.4 (dashes identify impossible
cases).
Let us compute, for example, the ceiling of resource
R
1
when only two units (out of
three) are available. From Table 7.3, we see that the only task that could be blocked in
this condition is
τ
3
because it requires three units of
R
1
; hence,
C
R
1
(2) =
π
3
=1.If
only one unit of
R
1
is available, the tasks that could be blocked are
τ
2
and
τ
3
; hence,
C
R
1
(1) = max(
π
2
,π
3
)=2. Finally, if none of the units of
R
1
is available, all three
tasks could be blocked on
R
1
; hence,
C
R
1
(0) = max(
π
1
,π
2
,π
3
)=3.
Search WWH ::
Custom Search