Thread_Control_struct Struct Reference
[Thread Handler]

#include <thread.h>

Collaboration diagram for Thread_Control_struct:

Collaboration graph
[legend]

Data Fields

Objects_Control Object
States_Control current_state
Priority_Control current_priority
Priority_Control real_priority
uint32_t resource_count
Thread_Wait_information Wait
Watchdog_Control Timer
uint32_t suspend_count
boolean is_global
boolean do_post_task_switch_extension
boolean is_preemptible
uint32_t cpu_time_budget
Thread_CPU_budget_algorithms budget_algorithm
Thread_CPU_budget_algorithm_callout budget_callout
rtems_thread_cpu_usage_t cpu_time_used
Chain_Controlready
Priority_Information Priority_map
Thread_Start_information Start
Context_Control Registers
Context_Control_fpfp_context
struct _reent * libc_reent
void * API_Extensions [THREAD_API_LAST+1]
void ** extensions
rtems_task_variable_ttask_variables

Detailed Description

This structure defines the Thread Control Block (TCB).

Field Documentation

This field is the object management structure for each thread.

Referenced by _CORE_mutex_Seize_interrupt_trylock_body(), _Thread_Internal_free(), and _Thread_MP_Free_proxy().

This field is the current execution state of this thread.

This field is the current priority state of this thread.

Referenced by _CORE_mutex_Seize_interrupt_trylock_body().

This field is the base priority of this thread.

This field is the number of mutexes currently held by this thread.

Referenced by _CORE_mutex_Seize_interrupt_trylock_body().

This field is the blocking information for this thread.

Referenced by _CORE_mutex_Seize_interrupt_trylock_body(), and _CORE_semaphore_Seize_isr_disable().

This field is the Watchdog used to manage thread delays and timeouts.

This field is the number of nested suspend calls.

This field is true if the thread is offered globally

This field is is true if the post task context switch should be executed for this thread at the next context switch.

This field is true if the thread is preemptible.

This field is the length of the time quantum that this thread is allowed to consume. The algorithm used to manage limits on CPU usage is specified by budget_algorithm.

This field is the algorithm used to manage this thread's time quantum. The algorithm may be specified as none which case, no limit is in place.

This field is the method invoked with the budgeted time is consumed.

rtems_thread_cpu_usage_t Thread_Control_struct::cpu_time_used

This field is the amount of CPU time consumed by this thread since it was created.

This field points to the Ready FIFO for this priority.

This field contains precalculated priority map indices.

This field contains information about the starting state of this thread.

This field contains the context of this thread.

Referenced by _Thread_Restart_self(), and _Thread_Stop_multitasking().

This field points to the floating point context for this thread. If NULL, the thread is integer only.

Referenced by _Thread_Restart_self().

struct _reent* Thread_Control_struct::libc_reent [read]

This field points to the newlib reentrancy structure for this thread.

void* Thread_Control_struct::API_Extensions[THREAD_API_LAST+1]

This array contains the API extension area pointers.

This field points to the user extension pointers.

This field points to the set of per task variables.


The documentation for this struct was generated from the following file:

Generated on Sat Jul 19 18:16:33 2008 for RTEMSSuperCore by  doxygen 1.5.6