RTEMS
|
Constants and Structures Associated with the Scheduler. More...
#include <rtems/score/thread.h>
Go to the source code of this file.
Classes | |
struct | Scheduler_Operations |
The scheduler operations. More... | |
struct | Scheduler_Context |
Scheduler context. More... | |
struct | _Scheduler_Control |
Scheduler control. More... | |
struct | Scheduler_Assignment |
Scheduler assignment. More... | |
Macros | |
#define | SCHEDULER_ASSIGN_DEFAULT UINT32_C(0x0) |
The scheduler assignment default attributes. | |
#define | SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL SCHEDULER_ASSIGN_DEFAULT |
The presence of this processor is optional. | |
#define | SCHEDULER_ASSIGN_PROCESSOR_MANDATORY UINT32_C(0x1) |
The presence of this processor is mandatory. | |
#define | SCHEDULER_OPERATION_DEFAULT_ASK_FOR_HELP |
#define | SCHEDULER_OPERATION_DEFAULT_GET_SET_AFFINITY , _Scheduler_default_Set_affinity |
#define | PRIORITY_MAXIMUM ( _Scheduler_Table[ 0 ].maximum_priority ) |
This defines the lowest (least important) thread priority of the first scheduler instance. | |
Typedefs | |
typedef struct _Scheduler_Control | Scheduler_Control |
typedef struct Scheduler_Context | Scheduler_Context |
Scheduler context. More... | |
Functions | |
Priority_Control | _Scheduler_default_Map_priority (const Scheduler_Control *scheduler, Priority_Control priority) |
Returns the scheduler internal thread priority mapped by SCHEDULER_PRIORITY_MAP(). More... | |
Priority_Control | _Scheduler_default_Unmap_priority (const Scheduler_Control *scheduler, Priority_Control priority) |
Returns the user visible thread priority unmapped by SCHEDULER_PRIORITY_UNMAP(). More... | |
bool | _Scheduler_default_Ask_for_help (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node) |
Does nothing. More... | |
void | _Scheduler_default_Reconsider_help_request (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node) |
Does nothing. More... | |
void | _Scheduler_default_Withdraw_node (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node, Thread_Scheduler_state next_state) |
Does nothing. More... | |
void | _Scheduler_default_Pin_or_unpin (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node, struct Per_CPU_Control *cpu) |
Does nothing in a single processor system, otherwise a fatal error is issued. More... | |
void | _Scheduler_default_Schedule (const Scheduler_Control *scheduler, Thread_Control *the_thread) |
Does nothing. More... | |
void | _Scheduler_default_Node_initialize (const Scheduler_Control *scheduler, Scheduler_Node *node, Thread_Control *the_thread, Priority_Control priority) |
Performs the scheduler base node initialization. More... | |
void | _Scheduler_default_Node_destroy (const Scheduler_Control *scheduler, Scheduler_Node *node) |
Does nothing. More... | |
void | _Scheduler_default_Release_job (const Scheduler_Control *scheduler, Thread_Control *the_thread, Priority_Node *priority_node, uint64_t deadline, Thread_queue_Context *queue_context) |
Does nothing. More... | |
void | _Scheduler_default_Cancel_job (const Scheduler_Control *scheduler, Thread_Control *the_thread, Priority_Node *priority_node, Thread_queue_Context *queue_context) |
Does nothing. More... | |
void | _Scheduler_default_Tick (const Scheduler_Control *scheduler, Thread_Control *executing) |
Performs tick operations depending on the CPU budget algorithm for each executing thread. More... | |
void | _Scheduler_default_Start_idle (const Scheduler_Control *scheduler, Thread_Control *the_thread, struct Per_CPU_Control *cpu) |
Starts an idle thread. More... | |
bool | _Scheduler_default_Set_affinity (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node, const Processor_mask *affinity) |
Checks if the processor set of the scheduler is the subset of the affinity set. More... | |
Variables | |
const Scheduler_Control | _Scheduler_Table [] |
This table contains the configured schedulers. More... | |
const size_t | _Scheduler_Count |
This constant contains the count of configured schedulers. More... | |
const Scheduler_Assignment | _Scheduler_Initial_assignments [] |
The scheduler assignments. More... | |
Constants and Structures Associated with the Scheduler.
This include file contains all the constants and structures associated with the scheduler.
Definition in file scheduler.h.