RTEMS CPU Kit with SuperCore
4.11.3
|
![]() |
Files | |
file | tasksimpl.h |
Classic Tasks Manager Implementation. | |
Macros | |
#define | RTEMS_TASKS_EXTERN extern |
Instantiate RTEMS Classic API Tasks Data. More... | |
Functions | |
void | _RTEMS_tasks_Manager_initialization (void) |
RTEMS Task Manager Initialization. More... | |
void | _RTEMS_tasks_Initialize_user_tasks (void) |
RTEMS User Task Initialization. More... | |
void | _RTEMS_Tasks_Invoke_task_variable_dtor (Thread_Control *the_thread, rtems_task_variable_t *tvp) |
RTEMS Tasks Invoke Task Variable Destructor. More... | |
RTEMS_INLINE_ROUTINE Thread_Control * | _RTEMS_tasks_Allocate (void) |
RTEMS_INLINE_ROUTINE void | _RTEMS_tasks_Free (Thread_Control *the_task) |
Frees a task control block. More... | |
RTEMS_INLINE_ROUTINE Priority_Control | _RTEMS_tasks_Priority_to_Core (rtems_task_priority priority) |
Converts an RTEMS API priority into a core priority. More... | |
RTEMS_INLINE_ROUTINE rtems_task_priority | _RTEMS_tasks_Priority_from_Core (Priority_Control priority) |
Converts a core priority into an RTEMS API priority. More... | |
RTEMS_INLINE_ROUTINE bool | _RTEMS_tasks_Priority_is_valid (rtems_task_priority the_priority) |
Checks whether the priority is a valid user task. More... | |
Variables | |
RTEMS_TASKS_EXTERN Objects_Information | _RTEMS_tasks_Information |
The following instantiates the information control block used to manage this class of objects. | |
#define RTEMS_TASKS_EXTERN extern |
Instantiate RTEMS Classic API Tasks Data.
This constant is defined to extern most of the time when using this header file. However by defining it to nothing, the data declared in this header file can be instantiated. This is done in a single per manager file.
RTEMS_INLINE_ROUTINE void _RTEMS_tasks_Free | ( | Thread_Control * | the_task | ) |
Frees a task control block.
This routine frees a task control block to the inactive chain of free task control blocks.
References _Objects_Free(), _Objects_Get_information_id(), Objects_Control::id, and Thread_Control::Object.
void _RTEMS_tasks_Initialize_user_tasks | ( | void | ) |
RTEMS User Task Initialization.
This routine creates and starts all configured user initialization threads.
References _RTEMS_tasks_Initialize_user_tasks_p.
void _RTEMS_Tasks_Invoke_task_variable_dtor | ( | Thread_Control * | the_thread, |
rtems_task_variable_t * | tvp | ||
) |
RTEMS Tasks Invoke Task Variable Destructor.
This routine invokes the optional user provided destructor on the task variable and frees the memory for the task variable.
References _Thread_Get_executing(), _Workspace_Free(), rtems_task_variable_t::dtor, rtems_task_variable_t::gval, rtems_task_variable_t::ptr, and rtems_task_variable_t::tval.
void _RTEMS_tasks_Manager_initialization | ( | void | ) |
RTEMS Task Manager Initialization.
This routine initializes all Task Manager related data structures.
References _Objects_Initialize_information(), and _RTEMS_tasks_Information.
RTEMS_INLINE_ROUTINE rtems_task_priority _RTEMS_tasks_Priority_from_Core | ( | Priority_Control | priority | ) |
Converts a core priority into an RTEMS API priority.
This function converts a core priority into an RTEMS API priority.
Referenced by rtems_capture_record_task().
RTEMS_INLINE_ROUTINE bool _RTEMS_tasks_Priority_is_valid | ( | rtems_task_priority | the_priority | ) |
Checks whether the priority is a valid user task.
This function returns TRUE if the_priority is a valid user task priority and FALSE otherwise.
References RTEMS_MAXIMUM_PRIORITY, and RTEMS_MINIMUM_PRIORITY.
Referenced by rtems_semaphore_set_priority(), and rtems_task_set_priority().
RTEMS_INLINE_ROUTINE Priority_Control _RTEMS_tasks_Priority_to_Core | ( | rtems_task_priority | priority | ) |
Converts an RTEMS API priority into a core priority.
This function converts an RTEMS API priority into a core priority.
Referenced by rtems_semaphore_create().