Skip to content
Snippets Groups Projects
Commit 44f3b130 authored by Sergey Bozhko's avatar Sergey Bozhko :eyes:
Browse files

prove that FIFO has no service inversion

parent 0b5938ba
No related branches found
No related tags found
1 merge request!366Prove RTA for RS FIFO
...@@ -8,6 +8,7 @@ Require Export prosa.analysis.facts.readiness.basic. ...@@ -8,6 +8,7 @@ Require Export prosa.analysis.facts.readiness.basic.
Require Export prosa.analysis.facts.busy_interval.all. Require Export prosa.analysis.facts.busy_interval.all.
Require Export prosa.analysis.facts.preemption.job.nonpreemptive. Require Export prosa.analysis.facts.preemption.job.nonpreemptive.
Require Export prosa.analysis.facts.priority.inversion. Require Export prosa.analysis.facts.priority.inversion.
Require Export prosa.analysis.facts.busy_interval.service_inversion.
(** We first make some trivial observations about the FIFO priority policy to (** We first make some trivial observations about the FIFO priority policy to
avoid having to re-reason these steps repeatedly in the subsequent avoid having to re-reason these steps repeatedly in the subsequent
...@@ -165,6 +166,15 @@ Section BasicLemmas. ...@@ -165,6 +166,15 @@ Section BasicLemmas.
by apply: leq_trans. } by apply: leq_trans. }
Qed. Qed.
(** As a corollary, FIFO implies the absence of service inversion. *)
Corollary FIFO_implies_no_service_inversion :
service_inversion_is_bounded_by arr_seq sched tsk (constant 0).
Proof.
move=> j ARR TSK POS t1 t2 PREF.
rewrite (leqRW (cumul_service_inv_le_cumul_priority_inv _ _ _ _ _ _ _ _ _ _)) //=.
by apply FIFO_implies_no_pi.
Qed.
End PriorityInversionBounded. End PriorityInversionBounded.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment