RTEMS 6.1-rc6
Loading...
Searching...
No Matches
Data Structures | Macros | Functions

This header file provides the interfaces of the Deterministic Priority Affinity SMP Scheduler. More...

#include <rtems/score/scheduler.h>
#include <rtems/score/schedulerpriority.h>
#include <rtems/score/schedulersmp.h>
#include <rtems/score/schedulerprioritysmp.h>
#include <sys/cpuset.h>

Go to the source code of this file.

Data Structures

struct  Scheduler_priority_affinity_SMP_Node
 Scheduler node specialization for Deterministic Priority Affinity SMP schedulers. More...
 

Macros

#define SCHEDULER_PRIORITY_AFFINITY_SMP_ENTRY_POINTS
 Entry points for the Deterministic Priority Affinity SMP Scheduler.
 

Functions

void _Scheduler_priority_affinity_SMP_Node_initialize (const Scheduler_Control *scheduler, Scheduler_Node *node, Thread_Control *the_thread, Priority_Control priority)
 Initializes per thread scheduler information.
 
void _Scheduler_priority_affinity_SMP_Block (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node)
 Blocks a thread.
 
void _Scheduler_priority_affinity_SMP_Yield (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node)
 
void _Scheduler_priority_affinity_SMP_Unblock (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node)
 Unblocks a thread.
 
void _Scheduler_priority_affinity_SMP_Update_priority (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node)
 Updates the priority of the node.
 
bool _Scheduler_priority_affinity_SMP_Ask_for_help (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node)
 Asks for help.
 
void _Scheduler_priority_affinity_SMP_Reconsider_help_request (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node)
 Reconsiders help.
 
void _Scheduler_priority_affinity_SMP_Withdraw_node (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node, Thread_Scheduler_state next_state)
 Withdraws node.
 
void _Scheduler_priority_affinity_SMP_Make_sticky (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node)
 Makes the node sticky.
 
void _Scheduler_priority_affinity_SMP_Clean_sticky (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node)
 Cleans the sticky property from the node.
 
void _Scheduler_priority_affinity_SMP_Add_processor (const Scheduler_Control *scheduler, Thread_Control *idle)
 Adds idle to scheduler.
 
Thread_Control_Scheduler_priority_affinity_SMP_Remove_processor (const Scheduler_Control *scheduler, struct Per_CPU_Control *cpu)
 Removes an idle thread from the given cpu.
 
Status_Control _Scheduler_priority_affinity_SMP_Set_affinity (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node, const Processor_mask *affinity)
 Sets affinity for the priority affinity SMP scheduler.
 

Detailed Description

This header file provides the interfaces of the Deterministic Priority Affinity SMP Scheduler.