Chain_Control Ready[0]
One ready queue per priority level.
void _Scheduler_priority_Node_initialize(const Scheduler_Control *scheduler, Scheduler_Node *node, Thread_Control *the_thread, Priority_Control priority)
Initializes the node with the given priority.
uint64_t Priority_Control
The thread priority control.
void _Scheduler_priority_Initialize(const Scheduler_Control *scheduler)
Initializes the priority scheduler.
static __inline__ Scheduler_priority_Context * _Scheduler_priority_Get_context(const Scheduler_Control *scheduler)
Gets the context of the scheduler.
Inlined Routines Associated with the Manipulation of the Priority-Based Scheduling Structures...
RTEMS_INLINE_ROUTINE void _Priority_bit_map_Initialize(Priority_bit_map_Control *bit_map)
Initializes a bit map.
static __inline__ void _Scheduler_priority_Ready_queue_initialize(Chain_Control *ready_queues, Priority_Control maximum_priority)
Ready queue initialization.
static __inline__ void _Scheduler_priority_Ready_queue_update(Scheduler_priority_Ready_queue *ready_queue, unsigned int new_priority, Priority_bit_map_Control *bit_map, Chain_Control *ready_queues)
Updates the specified ready queue data according to the new priority value.
Priority_bit_map_Control Bit_map
Bit map to indicate non-empty ready queues.
Scheduler_priority_Ready_queue Ready_queue
The associated ready queue of this node.
Priority_Control maximum_priority
The maximum priority value of this scheduler.
static __inline__ Scheduler_priority_Node * _Scheduler_priority_Node_downcast(Scheduler_Node *node)
Gets the priority node of the scheduler node.
static __inline__ void _Scheduler_Node_do_initialize(const struct _Scheduler_Control *scheduler, Scheduler_Node *node, Thread_Control *the_thread, Priority_Control priority)
Initializes a node.
#define SCHEDULER_PRIORITY_UNMAP(priority)
Returns the plain priority value.
Scheduler node specialization for Deterministic Priority schedulers.
Scheduler node for per-thread data.