RTEMS  5.0.0
Data Fields
Scheduler_Operations Struct Reference

The scheduler operations. More...

#include <scheduler.h>

Data Fields

void(* initialize )(const Scheduler_Control *)
 
void(* schedule )(const Scheduler_Control *, Thread_Control *)
 
void(* yield )(const Scheduler_Control *, Thread_Control *, Scheduler_Node *)
 
void(* block )(const Scheduler_Control *, Thread_Control *, Scheduler_Node *)
 
void(* unblock )(const Scheduler_Control *, Thread_Control *, Scheduler_Node *)
 
void(* update_priority )(const Scheduler_Control *, Thread_Control *, Scheduler_Node *)
 
Priority_Control(* map_priority )(const Scheduler_Control *, Priority_Control)
 
Priority_Control(* unmap_priority )(const Scheduler_Control *, Priority_Control)
 
void(* node_initialize )(const Scheduler_Control *, Scheduler_Node *, Thread_Control *, Priority_Control)
 
void(* node_destroy )(const Scheduler_Control *, Scheduler_Node *)
 
void(* release_job )(const Scheduler_Control *, Thread_Control *, Priority_Node *, uint64_t, Thread_queue_Context *)
 
void(* cancel_job )(const Scheduler_Control *, Thread_Control *, Priority_Node *, Thread_queue_Context *)
 
void(* tick )(const Scheduler_Control *, Thread_Control *)
 
void(* start_idle )(const Scheduler_Control *, Thread_Control *, struct Per_CPU_Control *)
 

Detailed Description

The scheduler operations.

Field Documentation

◆ block

void( * Scheduler_Operations::block) (const Scheduler_Control *, Thread_Control *, Scheduler_Node *)

◆ cancel_job

void( * Scheduler_Operations::cancel_job) (const Scheduler_Control *, Thread_Control *, Priority_Node *, Thread_queue_Context *)

◆ initialize

void( * Scheduler_Operations::initialize) (const Scheduler_Control *)

◆ map_priority

Priority_Control( * Scheduler_Operations::map_priority) (const Scheduler_Control *, Priority_Control)

◆ node_destroy

void( * Scheduler_Operations::node_destroy) (const Scheduler_Control *, Scheduler_Node *)

◆ node_initialize

void( * Scheduler_Operations::node_initialize) (const Scheduler_Control *, Scheduler_Node *, Thread_Control *, Priority_Control)

◆ release_job

void( * Scheduler_Operations::release_job) (const Scheduler_Control *, Thread_Control *, Priority_Node *, uint64_t, Thread_queue_Context *)

◆ schedule

void( * Scheduler_Operations::schedule) (const Scheduler_Control *, Thread_Control *)

◆ start_idle

void( * Scheduler_Operations::start_idle) (const Scheduler_Control *, Thread_Control *, struct Per_CPU_Control *)

◆ tick

void( * Scheduler_Operations::tick) (const Scheduler_Control *, Thread_Control *)

◆ unblock

void( * Scheduler_Operations::unblock) (const Scheduler_Control *, Thread_Control *, Scheduler_Node *)

◆ unmap_priority

Priority_Control( * Scheduler_Operations::unmap_priority) (const Scheduler_Control *, Priority_Control)

◆ update_priority

void( * Scheduler_Operations::update_priority) (const Scheduler_Control *, Thread_Control *, Scheduler_Node *)

◆ yield

void( * Scheduler_Operations::yield) (const Scheduler_Control *, Thread_Control *, Scheduler_Node *)

The documentation for this struct was generated from the following file: