coresem.h File Reference
#include <rtems/score/thread.h>
#include <rtems/score/threadq.h>
#include <rtems/score/priority.h>
#include <rtems/score/watchdog.h>
#include <rtems/score/coresem.inl>
Go to the source code of this file.
|
Data Structures |
| struct | CORE_semaphore_Attributes |
| struct | CORE_semaphore_Control |
Defines |
| #define | CORE_SEMAPHORE_STATUS_LAST CORE_SEMAPHORE_MAXIMUM_COUNT_EXCEEDED |
| | Core Semaphore Last Status.
|
Typedefs |
| typedef void(* | CORE_semaphore_API_mp_support_callout )(Thread_Control *, Objects_Id) |
Enumerations |
| enum | CORE_semaphore_Disciplines { CORE_SEMAPHORE_DISCIPLINES_FIFO,
CORE_SEMAPHORE_DISCIPLINES_PRIORITY
} |
| enum | CORE_semaphore_Status {
CORE_SEMAPHORE_STATUS_SUCCESSFUL,
CORE_SEMAPHORE_STATUS_UNSATISFIED_NOWAIT,
CORE_SEMAPHORE_WAS_DELETED,
CORE_SEMAPHORE_TIMEOUT,
CORE_SEMAPHORE_MAXIMUM_COUNT_EXCEEDED
} |
Functions |
| void | _CORE_semaphore_Initialize (CORE_semaphore_Control *the_semaphore, CORE_semaphore_Attributes *the_semaphore_attributes, uint32_t initial_value) |
| void | _CORE_semaphore_Seize (CORE_semaphore_Control *the_semaphore, Objects_Id id, boolean wait, Watchdog_Interval timeout) |
| CORE_semaphore_Status | _CORE_semaphore_Surrender (CORE_semaphore_Control *the_semaphore, Objects_Id id, CORE_semaphore_API_mp_support_callout api_semaphore_mp_support) |
| void | _CORE_semaphore_Flush (CORE_semaphore_Control *the_semaphore, Thread_queue_Flush_callout remote_extract_callout, uint32_t status) |
Detailed Description
This include file contains all the constants and structures associated with the Counting Semaphore Handler. A counting semaphore is the standard Dijkstra binary semaphore used to provide synchronization and mutual exclusion capabilities.