Skip to content
Snippets Groups Projects
Commit 8313f7c6 authored by Sergey Bozhko's avatar Sergey Bozhko :eyes: Committed by Björn Brandenburg
Browse files

update task and job models in preparation of aRTA port

Also removes an unnecessary module in rt.util.epsilon.
parent 0fbee8da
No related branches found
No related tags found
No related merge requests found
Pipeline #19445 passed with warnings
Showing
with 38 additions and 24 deletions
......@@ -15,8 +15,8 @@ From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bi
of uniprocessor scheduling of real-time tasks with arbitrary arrival models. *)
Module AbstractRTA.
Import Job Epsilon UniprocessorSchedule Service ResponseTime
AbstractRTADefinitions AbstractRTALockInService AbstractRTAReduction.
Import Job UniprocessorSchedule Service ResponseTime AbstractRTADefinitions
AbstractRTALockInService AbstractRTAReduction.
(* In this section we prove that the maximum among the solutions of the response-time bound
recurrence is a response time bound for tsk. Note that in this section we do not rely on
......
......@@ -23,7 +23,7 @@ From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bi
and sequential jobs. *)
Module AbstractSeqRTA.
Import Job Epsilon ArrivalCurves TaskArrival ScheduleOfTask UniprocessorSchedule Workload
Import Job ArrivalCurves TaskArrival ScheduleOfTask UniprocessorSchedule Workload
Service ResponseTime MaxArrivalsWorkloadBound
AbstractRTADefinitions AbstractRTALockInService AbstractRTAReduction AbstractRTA.
......
......@@ -9,7 +9,7 @@ From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bi
of uniprocessor scheduling of real-time tasks with arbitrary arrival models. *)
Module AbstractRTADefinitions.
Import Job Epsilon UniprocessorSchedule.
Import Job UniprocessorSchedule.
(* In this section, we introduce all the abstract notions required by the analysis. *)
Section Definitions.
......
......@@ -10,7 +10,7 @@ From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bi
Module AbstractRTAReduction.
Import Epsilon UniprocessorSchedule.
Import UniprocessorSchedule.
(* The response-time analysis we are presenting in this series of documents is based on searching
over all possible values of A, the relative arrival time of the job respective to the beginning
......
......@@ -12,7 +12,7 @@ From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bi
receives enough service to become nonpreemptive. *)
Module AbstractRTALockInService.
Import Job Epsilon UniprocessorSchedule Service AbstractRTADefinitions.
Import Job UniprocessorSchedule Service AbstractRTADefinitions.
(* Previously we defined the notion of lock-in service (see limited.schedule.v file).
Lock-in service is the amount of service after which a job cannot be preempted until
......
......@@ -25,7 +25,7 @@ From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bi
(4) EDF with floating nonpreemptive regions. *)
Module RTAforConcreteModels.
Import Epsilon Job ArrivalCurves TaskArrival Priority UniprocessorSchedule Workload Service
Import Job ArrivalCurves TaskArrival Priority UniprocessorSchedule Workload Service
ResponseTime MaxArrivalsWorkloadBound LimitedPreemptionPlatform ModelWithLimitedPreemptions
RTAforEDFwithBoundedNonpreemptiveSegmentsWithArrivalCurves NonpreemptiveSchedule
FullyNonPreemptivePlatform FullyPreemptivePlatform AbstractRTAforEDFwithArrivalCurves.
......
......@@ -21,7 +21,7 @@ From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bi
(** In this module we prove a general RTA theorem for EDF-schedulers. *)
Module RTAforEDFwithBoundedNonpreemptiveSegmentsWithArrivalCurves.
Import Epsilon Job ArrivalCurves TaskArrival Priority UniprocessorSchedule Workload Service
Import Job ArrivalCurves TaskArrival Priority UniprocessorSchedule Workload Service
ResponseTime MaxArrivalsWorkloadBound LimitedPreemptionPlatform RBF
AbstractRTAforEDFwithArrivalCurves BusyIntervalJLFP PriorityInversionIsBounded.
......
......@@ -24,7 +24,7 @@ From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bi
EDF uniprocessor scheduling of real-time tasks with arbitrary arrival models. *)
Module AbstractRTAforEDFwithArrivalCurves.
Import Job Epsilon ArrivalCurves TaskArrival ScheduleOfTask Priority
Import Job ArrivalCurves TaskArrival ScheduleOfTask Priority
UniprocessorSchedule Workload Service ResponseTime MaxArrivalsWorkloadBound
BusyIntervalJLFP LimitedPreemptionPlatform RBF Service JLFPInstantiation.
......
......@@ -24,7 +24,7 @@ From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bi
(4) FP with floating nonpreemptive regions. *)
Module RTAforConcreteModels.
Import Epsilon Job ArrivalCurves TaskArrival Priority UniprocessorSchedule Workload Service
Import Job ArrivalCurves TaskArrival Priority UniprocessorSchedule Workload Service
ResponseTime MaxArrivalsWorkloadBound LimitedPreemptionPlatform ModelWithLimitedPreemptions
RTAforFPwithBoundedNonpreemptiveSegmentsWithArrivalCurves NonpreemptiveSchedule
FullyNonPreemptivePlatform FullyPreemptivePlatform.
......
......@@ -21,7 +21,7 @@ From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bi
(** In this module we prove a general RTA theorem for FP-schedulers *)
Module RTAforFPwithBoundedNonpreemptiveSegmentsWithArrivalCurves.
Import Epsilon Job ArrivalCurves TaskArrival Priority UniprocessorSchedule Workload Service
Import Job ArrivalCurves TaskArrival Priority UniprocessorSchedule Workload Service
ResponseTime MaxArrivalsWorkloadBound LimitedPreemptionPlatform RBF
AbstractRTAforFPwithArrivalCurves BusyIntervalJLFP PriorityInversionIsBounded.
......
......@@ -25,7 +25,7 @@ From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bi
FP uniprocessor scheduling of real-time tasks with arbitrary arrival models. *)
Module AbstractRTAforFPwithArrivalCurves.
Import Epsilon Job ArrivalCurves TaskArrival Priority ScheduleOfTask
Import Job ArrivalCurves TaskArrival Priority ScheduleOfTask
UniprocessorSchedule Workload Service ResponseTime MaxArrivalsWorkloadBound
LimitedPreemptionPlatform RBF BusyIntervalJLFP JLFPInstantiation.
......
......@@ -16,7 +16,7 @@ From mathcomp Require Import ssreflect ssrbool ssrfun eqtype ssrnat seq fintype
predicate for various preemption models. *)
Module LimitedPreemptionPlatform.
Import Epsilon Job SporadicTaskset UniprocessorSchedule Priority Service.
Import Job SporadicTaskset UniprocessorSchedule Priority Service.
(* In this section, we define a processor platform with limited preemptions. *)
Section Properties.
......
......@@ -13,7 +13,7 @@ From mathcomp Require Import ssreflect ssrbool ssrfun eqtype ssrnat seq fintype
model with floating nonpreemptive regions. *)
Module ModelWithLimitedPreemptions.
Import Epsilon Job NondecreasingSequence UniprocessorSchedule LimitedPreemptionPlatform.
Import Job NondecreasingSequence UniprocessorSchedule LimitedPreemptionPlatform.
(* In this section, we instantiate can_be_preempted for the model with fixed preemption points and
the model with floating nonpreemptive regions. We also prove that the definitions are correct. *)
......
......@@ -17,7 +17,7 @@ From mathcomp Require Import ssreflect ssrbool ssrfun eqtype ssrnat seq fintype
can_be_preempted for the fully nonpreemptive model and prove its correctness. *)
Module FullyNonPreemptivePlatform.
Import Epsilon Job SporadicTaskset UniprocessorSchedule Priority
Import Job SporadicTaskset UniprocessorSchedule Priority
Service LimitedPreemptionPlatform.
Section FullyNonPreemptiveModel.
......
......@@ -16,7 +16,7 @@ From mathcomp Require Import ssreflect ssrbool ssrfun eqtype ssrnat seq fintype
can_be_preempted for the fully preemptive model and prove its correctness. *)
Module FullyPreemptivePlatform.
Import Epsilon Job SporadicTaskset UniprocessorSchedule Priority
Import Job SporadicTaskset UniprocessorSchedule Priority
Service LimitedPreemptionPlatform.
Section FullyPreemptiveModel.
......
......@@ -15,7 +15,7 @@ From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq path fintype bi
is bounded. *)
Module PriorityInversionIsBounded.
Import Epsilon Job Priority UniprocessorSchedule LimitedPreemptionPlatform BusyIntervalJLFP.
Import Job Priority UniprocessorSchedule LimitedPreemptionPlatform BusyIntervalJLFP.
Section PriorityInversionIsBounded.
......
......@@ -7,7 +7,7 @@ From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq fintype bigop.
(* In this file, we provide additional definitions and
lemmas about lock-in-serivce-compliant schedules. *)
Import Job Epsilon Service UniprocessorSchedule.
Import Job Service UniprocessorSchedule.
Section Definitions.
......
From rt.restructuring.behavior Require Export time.
From mathcomp Require Export eqtype.
From mathcomp Require Export eqtype ssrnat.
(* Throughout the library we assume that jobs have decidable equality *)
Definition JobType := eqType.
(* Definition of a generic type of parameter relating jobs to a discrete cost *)
Class JobCost (J : JobType) := job_cost : J -> duration.
(* Definition of a generic type of parameter for job_arrival *)
Class JobArrival (J : JobType) := job_arrival : J -> instant.
(* Definition of a generic type of parameter relating jobs to an absolute deadline *)
Class JobDeadline (J : JobType) := job_deadline : J -> instant.
(* Definition of a generic type of release jitter parameter. *)
Class JobJitter (J : JobType) := job_jitter : J -> duration.
Class JobJitter (J : JobType) := job_jitter : J -> duration.
\ No newline at end of file
From rt.restructuring.behavior Require Export time job.
From mathcomp Require Export eqtype ssrnat.
(* In this section, we introduce properties of a job. *)
Section PropertesOfJob.
(* Assume that job costs are known. *)
Context {Job : JobType}.
Context `{JobCost Job}.
(* Consider an arbitrary job. *)
Variable j: Job.
(* The job cost must be positive. *)
Definition job_cost_positive := job_cost j > 0.
End PropertesOfJob.
\ No newline at end of file
......@@ -25,4 +25,5 @@ Section Priority.
backlogged sched j t ->
scheduled_at sched j_hp t ->
hep_job_at t j_hp j.
End Priority.
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