RTEMS
schedulersmp.h
Go to the documentation of this file.
1 
9 /*
10  * Copyright (c) 2013-2014 embedded brains GmbH. All rights reserved.
11  *
12  * embedded brains GmbH
13  * Dornierstr. 4
14  * 82178 Puchheim
15  * Germany
16  * <rtems@embedded-brains.de>
17  *
18  * The license and distribution terms for this file may be
19  * found in the file LICENSE in this distribution or at
20  * http://www.rtems.org/license/LICENSE.
21  */
22 
23 #ifndef _RTEMS_SCORE_SCHEDULERSMP_H
24 #define _RTEMS_SCORE_SCHEDULERSMP_H
25 
26 #include <rtems/score/chain.h>
27 #include <rtems/score/scheduler.h>
28 
29 #ifdef __cplusplus
30 extern "C" {
31 #endif /* __cplusplus */
32 
46 typedef struct {
51 
56 
66 
70 typedef enum {
77 
87 
96 
100 typedef struct {
105 
110 
116 
125  const Scheduler_Control *scheduler,
126  Thread_Control *idle,
127  struct Per_CPU_Control *cpu
128 );
129 
132 #ifdef __cplusplus
133 }
134 #endif /* __cplusplus */
135 
136 #endif /* _RTEMS_SCORE_SCHEDULERSMP_H */
Scheduler context specialization for SMP schedulers.
Definition: schedulersmp.h:46
Chain_Control Scheduled
The chain of scheduled nodes.
Definition: schedulersmp.h:55
uint64_t Priority_Control
The thread priority control.
Definition: priority.h:70
Scheduler context.
Definition: scheduler.h:247
Priority_Control priority
The current priority of thread owning this node.
Definition: schedulersmp.h:114
This scheduler node is ready.
Definition: schedulersmp.h:94
The scheduler node is scheduled.
Definition: schedulersmp.h:86
Scheduler_SMP_Node_state
SMP scheduler node states.
Definition: schedulersmp.h:70
Scheduler_SMP_Node_state state
The state of this node.
Definition: schedulersmp.h:109
This scheduler node is blocked.
Definition: schedulersmp.h:76
Per CPU Core Structure.
Definition: percpu.h:347
Scheduler_Context Base
Basic scheduler context.
Definition: schedulersmp.h:50
Scheduler node specialization for SMP schedulers.
Definition: schedulersmp.h:100
Chain_Control Idle_threads
Chain of the available idle threads.
Definition: schedulersmp.h:64
Scheduler_Node Base
Basic scheduler node.
Definition: schedulersmp.h:104
Chain Handler API.
Scheduler control.
Definition: scheduler.h:264
Scheduler node for per-thread data.
Definition: schedulernode.h:79
Constants and Structures Associated with the Scheduler.
void _Scheduler_SMP_Start_idle(const Scheduler_Control *scheduler, Thread_Control *idle, struct Per_CPU_Control *cpu)
Starts an idle thread on the specified cpu.