![]() |
RTEMS 6.1
|
This group contains the Semaphore Manager implementation. More...
Modules | |
| Semaphore Manager Multiprocessing (MP) Support | |
| This group contains the implementation to support the Semaphore Manager in multiprocessing (MP) configurations. | |
Files | |
| file | sem.h |
| This header file defines the Semaphore Manager API. | |
| file | semdata.h |
| This header file provides data structures used by the implementation and the Application Configuration to define _Semaphore_Information. | |
| file | semimpl.h |
| This header file provides the implementation interfaces of the Semaphore Manager. | |
| file | sem.c |
| This source file contains a definition of the _Semaphore_Information with zero objects. | |
| file | semcreate.c |
| This source file contains the implementation of rtems_semaphore_create() and the Semaphore Manager system initialization. | |
| file | semdelete.c |
| This source file contains the implementation of rtems_semaphore_delete(). | |
| file | semflush.c |
| This source file contains the implementation of rtems_semaphore_flush(). | |
| file | semident.c |
| This source file contains the implementation of rtems_semaphore_ident(). | |
| file | semobtain.c |
| This source file contains the implementation of rtems_semaphore_obtain(). | |
| file | semrelease.c |
| This source file contains the implementation of rtems_semaphore_release(). | |
| file | semsetpriority.c |
| This source file contains the implementation of rtems_semaphore_set_priority(). | |
Data Structures | |
| struct | Semaphore_Control |
Macros | |
| #define | SEMAPHORE_INFORMATION_DEFINE(max, scheduler_count) |
| Macro to define the objects information for the Classic Semaphore objects. | |
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 } |
Variables | |
| Objects_Information | _Semaphore_Information |
| The Classic Semaphore objects information. | |
This group contains the Semaphore Manager implementation.
| #define SEMAPHORE_INFORMATION_DEFINE | ( | max, | |
| scheduler_count | |||
| ) |
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). |
| scheduler_count | The configured scheduler count (only used in SMP configurations). |
| enum Semaphore_Variant |
Classic semaphore variants.
Must be in synchronization with Semaphore_Control::variant.