MCScheduling 1.0
Set of Algorithms for Solving Mixed-Criticality Scheduling
Public Member Functions | Properties
MCScheduling.ClairvoyantEDF.CriticalList Class Reference

A so-called critical list that is used by the clairvoyant EDF algorithm. More...

List of all members.

Public Member Functions

void Add (Task task)
 Adds the specified task into the list.
void AddWithNote (Task task, int maxStartTimeNote)
 Adds the specified task into the list.
void Update (int maximumStartTimeBreach, int maximumStartTimeUpdate, int criticality)
 Updates the maximum start time of each task T whose value of this property is less then maximumStartTimeBreach, such that:
Task GetMinimum ()
 Returns the taks with the lowest maximal start time.
void Remove (Task task)
 Removes the specified task from the list.

Properties

int Count [get]
 The number of tasks in the list.

Detailed Description

A so-called critical list that is used by the clairvoyant EDF algorithm.

See ClairvoyantEDF class.


Member Function Documentation

void MCScheduling.ClairvoyantEDF.CriticalList.Add ( Task  task)

Adds the specified task into the list.

Parameters:
taskThe task to add.
void MCScheduling.ClairvoyantEDF.CriticalList.AddWithNote ( Task  task,
int  maxStartTimeNote 
)

Adds the specified task into the list.

Moreover it sets the maximum start times of all the jobs in the list whose maximum start time value is less then the value of the specified task to maxStartTimeNote.

Parameters:
taskThe task to add.
maxStartTimeNoteThe maximum start time update for all tasks whose value of this property is less then the one of the task to add.
Task MCScheduling.ClairvoyantEDF.CriticalList.GetMinimum ( )

Returns the taks with the lowest maximal start time.

Returns:
The taks with the lowest maximal start time.
Exceptions:
InvalidOperationExceptionIf the list is empty.
void MCScheduling.ClairvoyantEDF.CriticalList.Update ( int  maximumStartTimeBreach,
int  maximumStartTimeUpdate,
int  criticality 
)

Updates the maximum start time of each task T whose value of this property is less then maximumStartTimeBreach, such that:

T.MaximumStartTime = min(T.MaximumStartTime, MaximumStartTimeUpdate - T.ExecutionTime[min(T.criticality, criticality)].

Parameters:
maximumStartTimeBreachThe maximum start time to update.
maximumStartTimeUpdateThe update start time value.
criticalityThe criticality update parameter.

Property Documentation

int MCScheduling.ClairvoyantEDF.CriticalList.Count [get]

The number of tasks in the list.

 All Classes Namespaces Functions Variables Properties