This source file contains the implementation of _Scheduler_simple_SMP_Add_processor(), _Scheduler_simple_SMP_Ask_for_help(), _Scheduler_simple_SMP_Block(), _Scheduler_simple_SMP_Initialize(), _Scheduler_simple_SMP_Node_initialize(), _Scheduler_simple_SMP_Reconsider_help_request(), _Scheduler_simple_SMP_Remove_processor(), _Scheduler_simple_SMP_Unblock(), _Scheduler_simple_SMP_Update_priority(), _Scheduler_simple_SMP_Withdraw_node(), _Scheduler_simple_SMP_Make_sticky(), _Scheduler_simple_SMP_Clean_sticky(), and _Scheduler_simple_SMP_Yield().
More...
|
void | _Scheduler_simple_SMP_Initialize (const Scheduler_Control *scheduler) |
| Initializes the scheduler's context.
|
|
void | _Scheduler_simple_SMP_Node_initialize (const Scheduler_Control *scheduler, Scheduler_Node *node, Thread_Control *the_thread, Priority_Control priority) |
| Initializes the node with the given attributes.
|
|
void | _Scheduler_simple_SMP_Block (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node) |
| Blocks a thread.
|
|
void | _Scheduler_simple_SMP_Unblock (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node) |
| Unblocks a thread.
|
|
void | _Scheduler_simple_SMP_Update_priority (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node) |
| Updates the priority of the node.
|
|
bool | _Scheduler_simple_SMP_Ask_for_help (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node) |
| Asks for help.
|
|
void | _Scheduler_simple_SMP_Reconsider_help_request (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node) |
| Reconsiders help.
|
|
void | _Scheduler_simple_SMP_Withdraw_node (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node, Thread_Scheduler_state next_state) |
| Withdraws node.
|
|
void | _Scheduler_simple_SMP_Make_sticky (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node) |
| Makes the node sticky.
|
|
void | _Scheduler_simple_SMP_Clean_sticky (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node) |
| Cleans the sticky property from the node.
|
|
void | _Scheduler_simple_SMP_Add_processor (const Scheduler_Control *scheduler, Thread_Control *idle) |
| Adds idle to scheduler.
|
|
Thread_Control * | _Scheduler_simple_SMP_Remove_processor (const Scheduler_Control *scheduler, Per_CPU_Control *cpu) |
| Removes an idle thread from the given cpu.
|
|
void | _Scheduler_simple_SMP_Yield (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node) |
|
This source file contains the implementation of _Scheduler_simple_SMP_Add_processor(), _Scheduler_simple_SMP_Ask_for_help(), _Scheduler_simple_SMP_Block(), _Scheduler_simple_SMP_Initialize(), _Scheduler_simple_SMP_Node_initialize(), _Scheduler_simple_SMP_Reconsider_help_request(), _Scheduler_simple_SMP_Remove_processor(), _Scheduler_simple_SMP_Unblock(), _Scheduler_simple_SMP_Update_priority(), _Scheduler_simple_SMP_Withdraw_node(), _Scheduler_simple_SMP_Make_sticky(), _Scheduler_simple_SMP_Clean_sticky(), and _Scheduler_simple_SMP_Yield().