![]() |
RTEMS
5.0.0
|
Files | |
| file | semdata.h |
| Classic Semaphore Manager Data Structures. | |
| file | semimpl.h |
| Classic Semaphore Manager Implementation. | |
Data Structures | |
| struct | Semaphore_Control |
Macros | |
| #define | SEMAPHORE_INFORMATION_DEFINE(max) |
| Macro to define the objects information for the Classic Semaphore objects. More... | |
Enumerations | |
| enum | Semaphore_Variant { SEMAPHORE_VARIANT_MUTEX_INHERIT_PRIORITY, SEMAPHORE_VARIANT_MUTEX_PRIORITY_CEILING, SEMAPHORE_VARIANT_MUTEX_NO_PROTOCOL, SEMAPHORE_VARIANT_SIMPLE_BINARY, SEMAPHORE_VARIANT_COUNTING } |
| Classic semaphore variants. More... | |
| enum | Semaphore_Discipline { SEMAPHORE_DISCIPLINE_PRIORITY, SEMAPHORE_DISCIPLINE_FIFO } |
Functions | |
| RTEMS_INLINE_ROUTINE const Thread_queue_Operations * | _Semaphore_Get_operations (const Semaphore_Control *the_semaphore) |
| RTEMS_INLINE_ROUTINE Semaphore_Control * | _Semaphore_Allocate (void) |
| Allocates a semaphore control block from the inactive chain of free semaphore control blocks. More... | |
| RTEMS_INLINE_ROUTINE void | _Semaphore_Free (Semaphore_Control *the_semaphore) |
| Frees a semaphore control block to the inactive chain of free semaphore control blocks. More... | |
| RTEMS_INLINE_ROUTINE Semaphore_Control * | _Semaphore_Get (Objects_Id id, Thread_queue_Context *queue_context) |
Variables | |
| Objects_Information | _Semaphore_Information |
| The Classic Semaphore objects information. | |
| #define SEMAPHORE_INFORMATION_DEFINE | ( | max | ) |
Macro to define the objects information for the Classic Semaphore objects.
This macro should only be used by <rtems/confdefs.h>.
| max | The configured object maximum (the OBJECTS_UNLIMITED_OBJECTS flag may be set). |
| enum Semaphore_Variant |
Classic semaphore variants.
Must be in synchronization with Semaphore_Control::variant.
| RTEMS_INLINE_ROUTINE Semaphore_Control* _Semaphore_Allocate | ( | void | ) |
Allocates a semaphore control block from the inactive chain of free semaphore control blocks.
This function allocates a semaphore control block from the inactive chain of free semaphore control blocks.
| RTEMS_INLINE_ROUTINE void _Semaphore_Free | ( | Semaphore_Control * | the_semaphore | ) |
Frees a semaphore control block to the inactive chain of free semaphore control blocks.
This routine frees a semaphore control block to the inactive chain of free semaphore control blocks.
1.8.13