|
Scheduler
|
#include <priorityDiscipline.h>
Public Types | |
| typedef bool(* | ComparatorPointer) (std::shared_ptr< Process >, std::shared_ptr< Process >) |
Public Member Functions | |
| PriorityDiscipline (std::shared_ptr< SchedulerConfiguration > c) | |
| virtual | ~PriorityDiscipline () |
| std::shared_ptr< Process > | selectNextTask (Queue *readyQueue, std::shared_ptr< Process > running, unsigned int) |
| select the best task to run at this point. More... | |
| virtual bool | preempts (TriggeringEvent trigger) |
| returns true if the argument is a scheduling trigger for this specific discipline More... | |
| virtual std::string | getName ()=0 |
| returns the name of that discipline More... | |
Public Member Functions inherited from Scheduler::SchedulingDiscipline | |
| virtual | ~SchedulingDiscipline () |
| SchedulingDiscipline (std::shared_ptr< SchedulerConfiguration > c) | |
| virtual void | end () |
Protected Member Functions | |
| virtual void | updatePriorities (Queue *readyQueue, std::shared_ptr< Process > running) |
| sets the correct priorities to the tasks, especially if dynamic priorities are used. More... | |
| virtual ComparatorPointer | getComparator () |
| return a function pointer to a function that provides comparison of tasks' priorities More... | |
Additional Inherited Members | |
Protected Attributes inherited from Scheduler::SchedulingDiscipline | |
| std::shared_ptr< SchedulerConfiguration > | conf {nullptr} |
Definition at line 19 of file priorityDiscipline.h.
| typedef bool(* Scheduler::PriorityDiscipline::ComparatorPointer) (std::shared_ptr< Process >, std::shared_ptr< Process >) |
Definition at line 25 of file priorityDiscipline.h.
|
inline |
Definition at line 22 of file priorityDiscipline.h.
|
inlinevirtual |
Definition at line 23 of file priorityDiscipline.h.
|
protectedvirtual |
return a function pointer to a function that provides comparison of tasks' priorities
Reimplemented in Scheduler::RmsDiscipline, and Scheduler::EdfDiscipline.
Definition at line 62 of file priorityDiscipline.cpp.
|
pure virtual |
returns the name of that discipline
Implements Scheduler::SchedulingDiscipline.
Implemented in Scheduler::RmsDiscipline, Scheduler::EdfDiscipline, and Scheduler::FixedPriorityDiscipline.
|
virtual |
returns true if the argument is a scheduling trigger for this specific discipline
| trigger | the type of the event that triggered the scheduling invokation |
Implements Scheduler::SchedulingDiscipline.
Definition at line 40 of file priorityDiscipline.cpp.
|
virtual |
select the best task to run at this point.
| readyQueue | the ready queue |
| running | the currently running task |
| deadlineMisses |
Implements Scheduler::SchedulingDiscipline.
Definition at line 21 of file priorityDiscipline.cpp.
|
protectedvirtual |
sets the correct priorities to the tasks, especially if dynamic priorities are used.
Reimplemented in Scheduler::FixedPriorityDiscipline.
Definition at line 46 of file priorityDiscipline.cpp.
1.8.11