RTEMS  5.0.0
Files | Macros | Functions | Variables
POSIX Threads Support

Private Support Information for POSIX Threads. More...

Files

file  psxtransschedparam.c
 Translate sched_param into SuperCore Terms.
 
file  pthreadinitthreads.c
 POSIX Threads Initialize User Threads Body.
 

Macros

#define PTHREAD_MINIMUM_STACK_SIZE   _Configuration_POSIX_Minimum_stack_size
 

Functions

void _POSIX_Threads_Initialize_user_threads_body (void)
 POSIX threads initialize user threads body. More...
 
RTEMS_INLINE_ROUTINE void _POSIX_Threads_Copy_attributes (pthread_attr_t *dst_attr, const pthread_attr_t *src_attr)
 
RTEMS_INLINE_ROUTINE void _POSIX_Threads_Initialize_attributes (pthread_attr_t *attr)
 
RTEMS_INLINE_ROUTINE void _POSIX_Threads_Get_sched_param_sporadic (const Thread_Control *the_thread, const Scheduler_Control *scheduler, struct sched_param *param)
 
void _POSIX_Threads_Sporadic_timer (Watchdog_Control *watchdog)
 
void _POSIX_Threads_Sporadic_budget_callout (Thread_Control *the_thread)
 POSIX threads sporadic budget callout. More...
 
int _POSIX_Thread_Translate_to_sched_policy (Thread_CPU_budget_algorithms budget_algorithm)
 
int _POSIX_Thread_Translate_sched_param (int policy, const struct sched_param *param, Thread_CPU_budget_algorithms *budget_algorithm, Thread_CPU_budget_algorithm_callout *budget_callout)
 Translate sched_param into SuperCore terms. More...
 
RTEMS_INLINE_ROUTINE Thread_Control_POSIX_Threads_Allocate (void)
 
RTEMS_INLINE_ROUTINE void _POSIX_Threads_Free (Thread_Control *the_pthread)
 

Variables

const size_t _Configuration_POSIX_Minimum_stack_size
 
Thread_Information _POSIX_Threads_Information
 
const pthread_attr_t _POSIX_Threads_Default_attributes
 

Detailed Description

Private Support Information for POSIX Threads.

Macro Definition Documentation

◆ PTHREAD_MINIMUM_STACK_SIZE

#define PTHREAD_MINIMUM_STACK_SIZE   _Configuration_POSIX_Minimum_stack_size

The following sets the minimum stack size for POSIX threads.

Function Documentation

◆ _POSIX_Thread_Translate_sched_param()

int _POSIX_Thread_Translate_sched_param ( int  policy,
const struct sched_param *  param,
Thread_CPU_budget_algorithms budget_algorithm,
Thread_CPU_budget_algorithm_callout budget_callout 
)

Translate sched_param into SuperCore terms.

This method translates the POSIX API sched_param into the corresponding SuperCore settings.

Parameters
[in]policyis the POSIX scheduling policy
[in]parampoints to the scheduling parameter structure
[in]budget_algorithmpoints to the output CPU Budget algorithm
[in]budget_calloutpoints to the output CPU Callout
Return values
0Indicates success.
error_codePOSIX error code indicating failure.

◆ _POSIX_Threads_Initialize_user_threads_body()

void _POSIX_Threads_Initialize_user_threads_body ( void  )

POSIX threads initialize user threads body.

This routine creates and starts all configured user initialization threads.

◆ _POSIX_Threads_Sporadic_budget_callout()

void _POSIX_Threads_Sporadic_budget_callout ( Thread_Control the_thread)

POSIX threads sporadic budget callout.

This routine handles the sporadic scheduling algorithm.

Parameters
[in]the_threadis a pointer to the thread whose budget has been exceeded.

Variable Documentation

◆ _POSIX_Threads_Default_attributes

const pthread_attr_t _POSIX_Threads_Default_attributes

This variable contains the default POSIX Thread attributes.

◆ _POSIX_Threads_Information

Thread_Information _POSIX_Threads_Information

The following defines the information control block used to manage this class of objects.