RTEMS 6.1-rc7
Loading...
Searching...
No Matches
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
thread.h File Reference

This header file provides interfaces of the Thread Handler which are used by the implementation and the Application Configuration. More...

#include <rtems/score/atomic.h>
#include <rtems/score/context.h>
#include <rtems/score/freechain.h>
#include <rtems/score/isrlock.h>
#include <rtems/score/objectdata.h>
#include <rtems/score/priority.h>
#include <rtems/score/schedulernode.h>
#include <rtems/score/stack.h>
#include <rtems/score/states.h>
#include <rtems/score/threadq.h>
#include <rtems/score/timestamp.h>
#include <rtems/score/watchdog.h>

Go to the source code of this file.

Data Structures

struct  Thread_Entry_idle
 Data for idle thread entry. More...
 
struct  Thread_Entry_numeric
 Data for thread entry with one numeric argument and no return value. More...
 
struct  Thread_Entry_pointer
 Data for thread entry with one pointer argument and a pointer return value. More...
 
struct  Thread_Entry_information
 Thread entry information. More...
 
struct  Thread_CPU_budget_operations
 This structure contains operations which manage the CPU budget of a thread. More...
 
struct  Thread_CPU_budget_control
 This structure is used to control the CPU budget of a thread. More...
 
struct  Thread_Start_information
 
struct  Thread_Scheduler_control
 Thread scheduler control. More...
 
union  Thread_Wait_information_Object_argument_type
 Union type to hold a pointer to an immutable or a mutable object. More...
 
struct  Thread_Wait_information
 Information required to manage a thread while it is blocked. More...
 
struct  Thread_Timer_information
 Information required to manage a thread timer. More...
 
struct  Thread_Proxy_control
 
struct  Thread_Action
 Thread action. More...
 
struct  Thread_Keys_information
 Per-thread information for POSIX Keys. More...
 
struct  Thread_Action_control
 Control block to manage thread actions. More...
 
struct  Thread_Life_control
 Thread life control. More...
 
struct  Thread_Capture_control
 
struct  _Thread_Control
 
struct  Thread_Control_add_on
 Thread control add-on. More...
 
struct  Thread_Information
 The thread object information. More...
 

Macros

#define THREAD_API_FIRST   THREAD_API_RTEMS
 
#define THREAD_API_LAST   THREAD_API_POSIX
 
#define THREAD_LIFE_PROTECTED   0x1U
 Indicates that the thread life is protected.
 
#define THREAD_LIFE_RESTARTING   0x2U
 Indicates that thread is restarting.
 
#define THREAD_LIFE_TERMINATING   0x4U
 Indicates that thread is terminating.
 
#define THREAD_LIFE_CHANGE_DEFERRED   0x8U
 Indicates that thread life changes are deferred.
 
#define THREAD_LIFE_DETACHED   0x10U
 Indicates that thread is detached.
 
#define THREAD_DEFAULT_MAXIMUM_NAME_SIZE   16
 The default maximum size of a thread name in characters (including the terminating '\0' character).
 
#define _Thread_queue_Heads_size   sizeof(Thread_queue_Heads)
 Size of the thread queue heads of a particular application.
 
#define THREAD_INFORMATION_DEFINE_ZERO(name, api, cls)
 
#define THREAD_INFORMATION_DEFINE(name, api, cls, max)
 

Typedefs

typedef CPU_Uint32ptr Thread_Entry_numeric_type
 Type of the numeric argument of a thread entry function with at least one numeric argument.
 
typedef unsigned int Thread_Wait_flags
 This type is able to contain several flags used to control the wait class and state of a thread.
 
typedef struct Thread_Action Thread_Action
 
typedef void(* Thread_Action_handler) (Thread_Control *the_thread, Thread_Action *action, ISR_lock_Context *lock_context)
 This type defines the prototype of thread action handlers.
 
typedef unsigned int Thread_Life_state
 This type represents the thread life state.
 
typedef void(* rtems_per_thread_routine) (Thread_Control *)
 
typedef struct Thread_Configured_control Thread_Configured_control
 The configured thread control block.
 
typedef Thread_queue_Heads Thread_queue_Configured_heads
 The configured thread queue heads.
 

Enumerations

enum  Thread_APIs { THREAD_API_RTEMS , THREAD_API_POSIX }
 

Functions

void rtems_iterate_over_all_threads (rtems_per_thread_routine routine) RTEMS_DEPRECATED
 Deprecated, use rtems_task_iterate() instead.
 
Objects_Control_Thread_Allocate_unlimited (Objects_Information *information)
 Return an inactive thread object or NULL.
 

Variables

const Thread_Control_add_on _Thread_Control_add_ons []
 Thread control add-ons.
 
const size_t _Thread_Control_add_on_count
 Thread control add-on count.
 
const size_t _Thread_Initial_thread_count
 Count of configured threads.
 
const size_t _Thread_Maximum_name_size
 Maximum size of a thread name in characters (including the terminating '\0' character).
 
const size_t _Thread_Maximum_TLS_size
 If this constant is greater than zero, then it defines the maximum thread-local storage size, otherwise the thread-local storage size is defined by the linker depending on the thread-local storage objects used by the application in the statically-linked executable.
 
Thread_Information _Thread_Information
 The internal thread objects information.
 

Detailed Description

This header file provides interfaces of the Thread Handler which are used by the implementation and the Application Configuration.