RTEMS 6.1-rc4
|
This header file provides the interfaces of the Strong APA Scheduler. More...
Go to the source code of this file.
Data Structures | |
struct | Scheduler_strong_APA_Node |
Scheduler node specialization for Strong APA schedulers. More... | |
struct | Scheduler_strong_APA_CPU |
CPU related variables and a CPU_Control to implement BFS. More... | |
struct | Scheduler_strong_APA_Context |
Scheduler context and node definition for Strong APA scheduler. More... | |
Macros | |
#define | SCHEDULER_STRONG_APA_MAXIMUM_PRIORITY 255 |
#define | SCHEDULER_STRONG_APA_ENTRY_POINTS |
Entry points for the Strong APA Scheduler. | |
Functions | |
void | _Scheduler_strong_APA_Initialize (const Scheduler_Control *scheduler) |
Initializes the scheduler. | |
void | _Scheduler_strong_APA_Node_initialize (const Scheduler_Control *scheduler, Scheduler_Node *node, Thread_Control *the_thread, Priority_Control priority) |
Initializes the node with the given priority. | |
void | _Scheduler_strong_APA_Block (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node) |
Blocks the thread. | |
void | _Scheduler_strong_APA_Unblock (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node) |
Unblocks the thread. | |
void | _Scheduler_strong_APA_Update_priority (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node) |
Updates the priority of the node. | |
bool | _Scheduler_strong_APA_Ask_for_help (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node) |
Asks for help. | |
void | _Scheduler_strong_APA_Reconsider_help_request (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node) |
Reconsiders help request. | |
void | _Scheduler_strong_APA_Withdraw_node (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node, Thread_Scheduler_state next_state) |
Withdraws the node. | |
void | _Scheduler_strong_APA_Make_sticky (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node) |
Makes the node sticky. | |
void | _Scheduler_strong_APA_Clean_sticky (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node) |
Cleans the sticky property from the node. | |
void | _Scheduler_strong_APA_sticky (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node) |
Cleans the sticky property from the node. | |
void | _Scheduler_strong_APA_Add_processor (const Scheduler_Control *scheduler, Thread_Control *idle) |
Adds the idle thread to a processor. | |
Thread_Control * | _Scheduler_strong_APA_Remove_processor (const Scheduler_Control *scheduler, struct Per_CPU_Control *cpu) |
Removes an idle thread from the given cpu. | |
void | _Scheduler_strong_APA_Yield (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node) |
Performs a yield operation. | |
void | _Scheduler_strong_APA_Start_idle (const Scheduler_Control *scheduler, Thread_Control *idle, struct Per_CPU_Control *cpu) |
Starts an idle thread. | |
Status_Control | _Scheduler_strong_APA_Set_affinity (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node_base, const Processor_mask *affinity) |
Sets the affinity . | |
This header file provides the interfaces of the Strong APA Scheduler.