Commit ba086071 authored by Björn Brandenburg's avatar Björn Brandenburg
Browse files

preemption_time.v should not depend on task concept

This is a purely accidental dependency; purge it.
parent f96feefc
......@@ -7,26 +7,16 @@ From mathcomp Require Import ssreflect ssrbool ssrfun eqtype ssrnat seq fintype
ideal uni-processor model. *)
Section PreemptionTime.
(** Consider any type of tasks ... *)
Context {Task : TaskType}.
Context `{TaskCost Task}.
Context `{TaskMaxNonpreemptiveSegment Task}.
(** ... and any type of jobs associated with these tasks. *)
(** Consider any type of jobs... *)
Context {Job : JobType}.
Context `{JobTask Job Task}.
Context `{JobArrival Job}.
Context `{JobCost Job}.
(** In addition, we assume the existence of a function mapping a
task to its maximal non-preemptive segment ... *)
Context `{TaskMaxNonpreemptiveSegment Task}.
(** ... and the existence of a function mapping a job and
(** ... and assume the existence of a function mapping a job and
its progress to a boolean value saying whether this job is
preemptable at its current point of execution. *)
Context `{JobPreemptable Job}.
(** Consider any arrival sequence with consistent arrivals. *)
Variable arr_seq : arrival_sequence Job.
Hypothesis H_arrival_times_are_consistent : consistent_arrival_times arr_seq.
......@@ -35,7 +25,7 @@ Section PreemptionTime.
Variable sched : schedule (ideal.processor_state Job).
Hypothesis H_jobs_come_from_arrival_sequence:
jobs_come_from_arrival_sequence sched arr_seq.
(** We say that a time instant t is a preemption time iff the job
that is currently scheduled at t can be preempted (according to
the predicate). *)
......@@ -43,5 +33,5 @@ Section PreemptionTime.
if sched t is Some j then
job_preemptable j (service sched j t)
else true.
End PreemptionTime.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment