Library prosa.analysis.definitions.request_bound_function
Require Export prosa.model.task.arrival.curves.
Require Export prosa.model.priority.classes.
Require Export prosa.analysis.facts.priority.classes.
Require Export prosa.util.sum.
Require Export prosa.model.priority.classes.
Require Export prosa.analysis.facts.priority.classes.
Require Export prosa.util.sum.
Request Bound Function (RBF)
Consider any type of task characterized by a WCET bound and an arrival curve.
RBF of a Single Task
Definition task_request_bound_function (tsk : Task) (Δ : duration) :=
task_cost tsk × max_arrivals tsk Δ.
task_cost tsk × max_arrivals tsk Δ.
Total RBF of Multiple Tasks
The joint total RBF of all tasks in ts is simply the sum of each task's RBF.
Definition total_request_bound_function (Δ : duration) :=
\sum_(tsk <- ts) task_request_bound_function tsk Δ.
\sum_(tsk <- ts) task_request_bound_function tsk Δ.
For convenience, we additionally introduce specialized notions of total RBF for use
under FP scheduling that consider only certain tasks.
relation.
We define the following bound for the total workload of
tasks of higher-or-equal priority (with respect to tsk) in any interval
of length Δ.
Definition total_hep_request_bound_function_FP (tsk : Task) (Δ : duration) :=
\sum_(tsk_other <- ts | hep_task tsk_other tsk)
task_request_bound_function tsk_other Δ.
\sum_(tsk_other <- ts | hep_task tsk_other tsk)
task_request_bound_function tsk_other Δ.
We also define a bound for the total workload of higher-or-equal-priority
tasks other than tsk in any interval of length Δ.
Definition total_ohep_request_bound_function_FP (tsk : Task) (Δ : duration) :=
\sum_(tsk_other <- ts | hep_task tsk_other tsk && (tsk_other != tsk))
task_request_bound_function tsk_other Δ.
\sum_(tsk_other <- ts | hep_task tsk_other tsk && (tsk_other != tsk))
task_request_bound_function tsk_other Δ.
We also define a bound for the total workload of higher-or-equal-priority
tasks other than tsk in any interval of length Δ.
Definition total_ep_request_bound_function_FP (tsk : Task) (Δ : duration) :=
\sum_(tsk_other <- ts | ep_task tsk_other tsk)
task_request_bound_function tsk_other Δ.
\sum_(tsk_other <- ts | ep_task tsk_other tsk)
task_request_bound_function tsk_other Δ.
Finally, we define a bound for the total workload of higher-priority
tasks in any interval of length Δ.