Library prosa.model.task.concept
Task Type
Task Model Core Parameters
Second, we define a task-model parameter to express each task's relative
deadline.
Third, we define a task-model parameter to express each task's worst-case
execution cost (WCET).
Task Model Validity
Consider any type of tasks with WCETs and relative deadlines.
First, we constrain the possible WCET values of a valid task.
Consider an arbitrary task.
The WCET of the task should be positive.
The WCET should not be larger than the deadline, as otherwise the task
is trivially infeasible.
Second, we relate the cost of a task's jobs to its WCET.
Consider any type of jobs associated with the tasks ...
... and consider the cost of each job.
The cost of any job j cannot exceed the WCET of its respective
task.
... and any arrival sequence.
The cost of a job from the arrival sequence cannot
be larger than the task cost.
Definition arrivals_have_valid_job_costs :=
∀ j,
arrives_in arr_seq j →
valid_job_cost j.
End ValidJobCost.
End ModelValidity.
∀ j,
arrives_in arr_seq j →
valid_job_cost j.
End ValidJobCost.
End ModelValidity.
Task Sets
Consider any type of tasks with WCETs ...
... and any type of jobs associated with these tasks ...
... as well as their individual execution costs.
Further, consider an arrival sequence of these jobs...
...and the set of tasks that generate them.
All jobs in the arrival sequence should come from the task set.
Definition all_jobs_from_taskset :=
∀ j,
arrives_in arr_seq j →
job_task j \in ts.
End ValidTaskSet.
∀ j,
arrives_in arr_seq j →
job_task j \in ts.
End ValidTaskSet.
Finally, for readability, we define two ways in which jobs and tasks
relate.
For any type of job associated with any type of tasks...