![]() |
RTEMS
5.0.0
|
Files | |
| file | regiondata.h |
| Classic Region Manager Data Structures. | |
| file | regionimpl.h |
| Classic Region Manager Implementation. | |
Data Structures | |
| struct | Region_Control |
Macros | |
| #define | REGION_INFORMATION_DEFINE(max) |
| Macro to define the objects information for the Classic Region objects. More... | |
| #define | REGION_OF_THREAD_QUEUE_QUEUE(queue) RTEMS_CONTAINER_OF( queue, Region_Control, Wait_queue.Queue ) |
Functions | |
| RTEMS_INLINE_ROUTINE Region_Control * | _Region_Allocate (void) |
| Region_Allocate. More... | |
| RTEMS_INLINE_ROUTINE void | _Region_Free (Region_Control *the_region) |
| Region_Free. More... | |
| RTEMS_INLINE_ROUTINE Region_Control * | _Region_Get_and_lock (Objects_Id id) |
| RTEMS_INLINE_ROUTINE void | _Region_Unlock (Region_Control *the_region) |
| RTEMS_INLINE_ROUTINE void * | _Region_Allocate_segment (Region_Control *the_region, uintptr_t size) |
| Region_Allocate_segment. More... | |
| RTEMS_INLINE_ROUTINE bool | _Region_Free_segment (Region_Control *the_region, void *the_segment) |
| Region_Free_segment. More... | |
| void | _Region_Process_queue (Region_Control *the_region) |
| Process Region Queue. More... | |
Variables | |
| Objects_Information | _Region_Information |
| The Classic Region objects information. | |
| #define REGION_INFORMATION_DEFINE | ( | max | ) |
Macro to define the objects information for the Classic Region objects.
This macro should only be used by <rtems/confdefs.h>.
| max | The configured object maximum (the OBJECTS_UNLIMITED_OBJECTS flag may be set). |
| RTEMS_INLINE_ROUTINE Region_Control* _Region_Allocate | ( | void | ) |
Region_Allocate.
This function allocates a region control block from the inactive chain of free region control blocks.
| RTEMS_INLINE_ROUTINE void* _Region_Allocate_segment | ( | Region_Control * | the_region, |
| uintptr_t | size | ||
| ) |
Region_Allocate_segment.
This function attempts to allocate a segment from the_region. If successful, it returns the address of the allocated segment. Otherwise, it returns NULL.
| RTEMS_INLINE_ROUTINE void _Region_Free | ( | Region_Control * | the_region | ) |
Region_Free.
This routine frees a region control block to the inactive chain of free region control blocks.
| RTEMS_INLINE_ROUTINE bool _Region_Free_segment | ( | Region_Control * | the_region, |
| void * | the_segment | ||
| ) |
Region_Free_segment.
This function frees the_segment to the_region.
| void _Region_Process_queue | ( | Region_Control * | the_region | ) |
Process Region Queue.
This is a helper routine which is invoked any time memory is freed. It looks at the set of waiting tasks and attempts to satisfy all outstanding requests.
| [in] | the_region | is the the region |
1.8.13