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

This header file provides the interfaces of the Earliest Deadline First (EDF) Priority SMP Scheduler. 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.
 
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.
 
void _Scheduler_EDF_SMP_Block (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node)
 Blocks the thread.
 
void _Scheduler_EDF_SMP_Unblock (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node)
 Unblocks the thread.
 
void _Scheduler_EDF_SMP_Update_priority (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node)
 Updates the priority of the node.
 
bool _Scheduler_EDF_SMP_Ask_for_help (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node)
 Asks for help operation.
 
void _Scheduler_EDF_SMP_Reconsider_help_request (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node)
 Reconsiders help operation.
 
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.
 
void _Scheduler_EDF_SMP_Make_sticky (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node)
 Makes the node sticky.
 
void _Scheduler_EDF_SMP_Clean_sticky (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node)
 Cleans the sticky property from the node.
 
void _Scheduler_EDF_SMP_Pin (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node, struct Per_CPU_Control *cpu)
 Pin thread operation.
 
void _Scheduler_EDF_SMP_Unpin (const Scheduler_Control *scheduler, Thread_Control *the_thread, Scheduler_Node *node, struct Per_CPU_Control *cpu)
 Unpin thread operation.
 
void _Scheduler_EDF_SMP_Add_processor (const Scheduler_Control *scheduler, Thread_Control *idle)
 Adds processor.
 
Thread_Control_Scheduler_EDF_SMP_Remove_processor (const Scheduler_Control *scheduler, struct Per_CPU_Control *cpu)
 Removes an idle thread from the given cpu.
 
void _Scheduler_EDF_SMP_Yield (const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node)
 Performs the yield of a thread.
 
void _Scheduler_EDF_SMP_Start_idle (const Scheduler_Control *scheduler, Thread_Control *idle, struct Per_CPU_Control *cpu)
 Starts an idle thread.
 
Status_Control _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.
 

Detailed Description

This header file provides the interfaces of the Earliest Deadline First (EDF) Priority SMP Scheduler.