RTEMS: cpukit/include/rtems/score/coremutex.h Source File

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
coremutex.h
Go to the documentation of this file.
1
14/*
15 * COPYRIGHT (c) 1989-2011.
16 * On-Line Applications Research Corporation (OAR).
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_COREMUTEX_H
24#define _RTEMS_SCORE_COREMUTEX_H
25
26#include <rtems/score/thread.h>
27#include <rtems/score/threadq.h>
28#include <rtems/score/priority.h>
29#include <rtems/score/watchdog.h>
30#include <rtems/score/interr.h>
31
32struct _Scheduler_Control;
33
34#ifdef __cplusplus
35extern "C" {
36#endif
37
56 typedef struct {
62 Thread_queue_Control Wait_queue;
63} CORE_mutex_Control;
64
68 typedef struct {
72 CORE_mutex_Control Mutex;
73
77 unsigned int nest_level;
78} CORE_recursive_mutex_Control;
79
83 typedef struct {
87 CORE_recursive_mutex_Control Recursive;
88
92 Priority_Node Priority_ceiling;
93
94#if defined(RTEMS_SMP)
98 const struct _Scheduler_Control *scheduler;
99#endif
100} CORE_ceiling_mutex_Control;
101
104#ifdef __cplusplus
105}
106#endif
107
108#endif
109/* end of include file */
watchdog.h
Constants and Structures Associated with Watchdog Timers.
interr.h
Constants and Prototypes Related to the Internal Error Handler.
priority.h
Priority Handler API.
thread.h
Constants and Structures Related with the Thread Control Block.
CORE_ceiling_mutex_Control
The recursive mutex control with priority ceiling protocol support.
Definition: coremutex.h:83
CORE_ceiling_mutex_Control::Priority_ceiling
Priority_Node Priority_ceiling
The priority ceiling node for the mutex owner.
Definition: coremutex.h:92
CORE_ceiling_mutex_Control::Recursive
CORE_recursive_mutex_Control Recursive
The plain recursive mutex.
Definition: coremutex.h:87
CORE_mutex_Control
Control block used to manage each mutex.
Definition: coremutex.h:56
CORE_mutex_Control::Wait_queue
Thread_queue_Control Wait_queue
The thread queue of this mutex.
Definition: coremutex.h:62
CORE_recursive_mutex_Control
The recursive mutex control.
Definition: coremutex.h:68
CORE_recursive_mutex_Control::nest_level
unsigned int nest_level
The nest level in case of a recursive seize.
Definition: coremutex.h:77
CORE_recursive_mutex_Control::Mutex
CORE_mutex_Control Mutex
The plain non-recursive mutex.
Definition: coremutex.h:72
Priority_Node
The priority node to build up a priority aggregation.
Definition: priority.h:98
Thread_queue_Control
Definition: threadq.h:553
_Scheduler_Control
Scheduler control.
Definition: scheduler.h:269
threadq.h
Constants and Structures Needed to Declare a Thread Queue.