| 12345678910111213141516171819202122 |
- #ifndef CX_ZIVUOS_SCHEDULER_H_INCLUDED
- #define CX_ZIVUOS_SCHEDULER_H_INCLUDED
- #include "models.h"
- #include "process.h"
- typedef enum zv_scheduler_mode_e {
- ZV_FIRST_MATCH,
- ZV_ROUND_ROBIN_FIRST_MATCH,
- ZV_BALANCED_PRIORITY,
- ZV_NON_BALANCED_PRIORITY
- } zv_scheduler_mode_t;
- void zv_kernel_scheduler(struct zv_kernel_s *);
- zv_process_t * zv_kernel_round_first_match(struct zv_kernel_s *);
- zv_process_t * zv_kernel_balanced_priority(struct zv_kernel_s *);
- zv_process_t * zv_kernel_non_balanced_priority(struct zv_kernel_s *);
- zv_process_t * zv_kernel_basic_scheduler(struct zv_kernel_s *);
- zv_process_t * zv_kernel_scheduler_mode_selector(struct zv_kernel_s *);
- zv_process_t * zv_kernel_scheduler_select_interrupted(struct zv_kernel_s *);
- #endif
|