RTEMS  5.1
Data Structures | Macros | Functions

EDF SMP Scheduler API. More...

#include <rtems/score/scheduler.h>
#include <rtems/score/scheduleredf.h>
#include <rtems/score/schedulersmp.h>

Go to the source code of this file.

Data Structures

struct  Scheduler_EDF_SMP_Node
 
struct  Scheduler_EDF_SMP_Ready_queue
 
struct  Scheduler_EDF_SMP_Context
 

Macros

#define SCHEDULER_EDF_SMP_ENTRY_POINTS
 

Functions

void _Scheduler_EDF_SMP_Initialize (const Scheduler_Control *scheduler)
 Initializes the context of the scheduler control. More...
 
void _Scheduler_EDF_SMP_Node_initialize (const Scheduler_Control *scheduler, Scheduler_Node *node, Thread_Control *the_thread, Priority_Control priority)
 Initializes the node with the given priority. More...
 
void _Scheduler_EDF_SMP_Block (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node)
 Blocks the thread. More...
 
void _Scheduler_EDF_SMP_Unblock (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node)
 Unblocks the thread. More...
 
void _Scheduler_EDF_SMP_Update_priority (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node)
 Updates the priority of the node. More...
 
bool _Scheduler_EDF_SMP_Ask_for_help (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node)
 Asks for help operation. More...
 
void _Scheduler_EDF_SMP_Reconsider_help_request (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node)
 Reconsiders help operation. More...
 
void _Scheduler_EDF_SMP_Withdraw_node (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node, Thread_Scheduler_state next_state)
 Withdraws node operation. More...
 
void _Scheduler_EDF_SMP_Pin (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node, struct Per_CPU_Control *cpu)
 Pin thread operation. More...
 
void _Scheduler_EDF_SMP_Unpin (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node, struct Per_CPU_Control *cpu)
 Unpin thread operation. More...
 
void _Scheduler_EDF_SMP_Add_processor (const Scheduler_Control *scheduler, Thread_Control *idle)
 Adds processor. More...
 
Thread_Control_Scheduler_EDF_SMP_Remove_processor (const Scheduler_Control *scheduler, struct Per_CPU_Control *cpu)
 Removes an idle thread from the given cpu. More...
 
void _Scheduler_EDF_SMP_Yield (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node)
 Performs the yield of a thread. More...
 
void _Scheduler_EDF_SMP_Start_idle (const Scheduler_Control *scheduler, Thread_Control *idle, struct Per_CPU_Control *cpu)
 Starts an idle thread. More...
 
bool _Scheduler_EDF_SMP_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...
 

Detailed Description

EDF SMP Scheduler API.