]> rtime.felk.cvut.cz Git - rtems-pluggable-edf.git/blobdiff - src/edf/scheduler_edf.h
Scheduler modified in order to have an extention of CBS.
[rtems-pluggable-edf.git] / src / edf / scheduler_edf.h
index f67140a99e4f3857d684b18112b713baf7b59845..ed4ba3519530c189705cb55ff8ab4672ab086fb4 100644 (file)
 // keeps the ready queue for EDF
 EDF_Chain_Control _Thread_Ready_EDF_chain;
 
-/**
- * This routine shifts a deadline for the next period of a periodical task execution.
- */
-void edf_next_period(Thread_Control *the_thread);
+/// This routine is called when a task starts to execute a new period or
+/// a first period.
+void edf_next_period(void);
+
+/// Changes scheduling policy from priorities to deadlines
+/// @param __rel_deadline__ in ticks required
+void edf_deadline_init(uint32_t __rel_deadline__, uint32_t __cmp_time__, rtems_asr_entry *budget_overrun_handler);
+
+/// Changes scheduling policy from deadlines to priorities
+void edf_deadline_cancel(void);
+
+Thread_CPU_budget_algorithm_callout edf_budget_overrun_callout();
+
+rtems_timer_service_routine_entry edf_budget_overrun_reenable(Thread_Control *the_thread);
 
 
 /// Pluggable scheduler callback functions