RTEMS
|
SuperCore Thread States. More...
Files | |
file | states.h |
Thread Execution State Information. | |
file | statesimpl.h |
Inlined Routines Associated with Thread State Information. | |
Typedefs | |
typedef uint32_t | States_Control |
Functions | |
static __inline__ States_Control | _States_Set (States_Control states_to_set, States_Control current_state) |
Returns the result of setting the states to set to the given state. More... | |
static __inline__ States_Control | _States_Clear (States_Control states_to_clear, States_Control current_state) |
Clears the states into the passed current state and returns the result. More... | |
static __inline__ bool | _States_Is_ready (States_Control the_states) |
Checks if the state is ready. More... | |
static __inline__ bool | _States_Is_dormant (States_Control the_states) |
Checks if DORMANT state is set. More... | |
static __inline__ bool | _States_Is_suspended (States_Control the_states) |
Checks if SUSPENDED state is set. More... | |
static __inline__ bool | _States_Is_waiting_for_rpc_reply (States_Control the_states) |
Checks if WAITING_FOR_TIME state is set. More... | |
static __inline__ bool | _States_Is_waiting_for_join_at_exit (States_Control the_states) |
Checks if WAITING_FOR_JOIN_AT_EXIT state is set. More... | |
static __inline__ bool | _States_Is_interruptible_by_signal (States_Control the_states) |
Checks if the state is set to be interruptible. More... | |
static __inline__ bool | _States_Is_locally_blocked (States_Control the_states) |
Checks if the state is blocked waiting on a local resource. More... | |
SuperCore Thread States.
This handler encapsulates functionality which relates to the management of the state bitmap associated with each thread.
#define STATES_ALL_SET 0xffffffff |
All state bits set to one (provided for _Thread_Start())
Definition at line 144 of file statesimpl.h.
#define STATES_BLOCKED |
This macro corresponds to a task waiting which is blocked.
Definition at line 135 of file statesimpl.h.
#define STATES_DEBUGGER 0x08000000 |
This macro corresponds to a task being held by the debugger.
Definition at line 105 of file statesimpl.h.
#define STATES_DORMANT 0x80000000 |
This macro corresponds to a task being created but not yet started.
Definition at line 119 of file statesimpl.h.
#define STATES_INTERRUPTIBLE_BY_SIGNAL 0x10000000 |
This macro corresponds to a task which is in an interruptible blocking state.
Definition at line 110 of file statesimpl.h.
#define STATES_LIFE_IS_CHANGING 0x00020000 |
This macro corresponds to a task those life is changing.
Definition at line 102 of file statesimpl.h.
#define STATES_LOCALLY_BLOCKED |
This macro corresponds to a task waiting for a local object operation.
Definition at line 122 of file statesimpl.h.
#define STATES_READY 0x00000000 |
This macro corresponds to a task being ready.
Definition at line 45 of file statesimpl.h.
#define STATES_SUSPENDED 0x00008000 |
This macro corresponds to a task being suspended.
Definition at line 96 of file statesimpl.h.
#define STATES_WAITING_FOR_BARRIER 0x00000800 |
This macro corresponds to a task waiting for a barrier.
Definition at line 84 of file statesimpl.h.
#define STATES_WAITING_FOR_BSD_WAKEUP 0x00000080 |
This macro corresponds to a task waiting for BSD wakeup.
Definition at line 69 of file statesimpl.h.
#define STATES_WAITING_FOR_CONDITION_VARIABLE 0x00000020 |
This macro corresponds to a task waiting for a condition variable.
Definition at line 63 of file statesimpl.h.
#define STATES_WAITING_FOR_EVENT 0x00000004 |
This macro corresponds to a task waiting for an event.
Definition at line 54 of file statesimpl.h.
#define STATES_WAITING_FOR_FUTEX 0x00000040 |
This macro corresponds to a task waiting for a futex.
Definition at line 66 of file statesimpl.h.
#define STATES_WAITING_FOR_JOIN 0x00004000 |
This macro corresponds to a task waiting for a join.
Definition at line 93 of file statesimpl.h.
#define STATES_WAITING_FOR_JOIN_AT_EXIT 0x00002000 |
This macro corresponds to a task waiting for a join while exiting.
Definition at line 90 of file statesimpl.h.
#define STATES_WAITING_FOR_MESSAGE 0x00000010 |
This macro corresponds to a task waiting for a message.
Definition at line 60 of file statesimpl.h.
#define STATES_WAITING_FOR_MUTEX 0x00000001 |
This macro corresponds to a task waiting for a mutex.
Definition at line 48 of file statesimpl.h.
#define STATES_WAITING_FOR_PERIOD 0x00000200 |
This macro corresponds to a task waiting for a period.
Definition at line 78 of file statesimpl.h.
#define STATES_WAITING_FOR_RPC_REPLY 0x20000000 |
This macro corresponds to a task waiting for a reply to an MPCI request.
Definition at line 113 of file statesimpl.h.
#define STATES_WAITING_FOR_RWLOCK 0x00001000 |
This macro corresponds to a task waiting for a RWLock.
Definition at line 87 of file statesimpl.h.
#define STATES_WAITING_FOR_SEGMENT 0x00010000 |
This macro corresponds to a task waiting for a fixed size segment.
Definition at line 99 of file statesimpl.h.
#define STATES_WAITING_FOR_SEMAPHORE 0x00000002 |
This macro corresponds to a task waiting for a semaphore.
Definition at line 51 of file statesimpl.h.
#define STATES_WAITING_FOR_SIGNAL 0x00000400 |
This macro corresponds to a task waiting for a signal.
Definition at line 81 of file statesimpl.h.
#define STATES_WAITING_FOR_SYSTEM_EVENT 0x00000008 |
This macro corresponds to a task waiting for a system event.
Definition at line 57 of file statesimpl.h.
#define STATES_ZOMBIE 0x40000000 |
This macro corresponds to a task being a zombie.
Definition at line 116 of file statesimpl.h.
typedef uint32_t States_Control |
|
static |
Clears the states into the passed current state and returns the result.
This function clears the given states_to_clear into the current_state passed in. The result is returned to the user in current_state.
states_to_clear | The state bits to clear. |
current_state | The state set to remove them from. |
Definition at line 176 of file statesimpl.h.
|
static |
Checks if DORMANT state is set.
This function returns true if the DORMANT state is set in the_states, and false otherwise.
the_states | The task state set to test. |
true | DORMANT state is set in the_states. |
false | DORMANT state is not set in the_states. |
Definition at line 213 of file statesimpl.h.
|
static |
Checks if the state is set to be interruptible.
This function returns true if the task's state is set in way that allows it to be interrupted by a signal.
the_states | The task state set to test. |
true | the_states is interruptible. |
false | the_states is not interruptible. |
Definition at line 285 of file statesimpl.h.
|
static |
Checks if the state is blocked waiting on a local resource.
This function returns true if one of the states which indicates that a task is blocked waiting for a local resource is set in the_states, and false otherwise.
the_states | The task state set to test. |
true | The state indicates that the task is blocked waiting on a local resource. |
false | The state indicates that the task is not blocked waiting on a local resource. |
Definition at line 306 of file statesimpl.h.
|
static |
Checks if the state is ready.
This function returns true if the_states indicates that the state is READY, and false otherwise.
the_states | The task state set to test. |
true | The state is ready. |
false | The state is not ready. |
Definition at line 195 of file statesimpl.h.
|
static |
Checks if SUSPENDED state is set.
This function returns true if the SUSPENDED state is set in the_states, and false otherwise.
the_states | The task state set to test. |
true | SUSPENDED state is set in the_states. |
false | SUSPENDED state is not set in the_states. |
Definition at line 231 of file statesimpl.h.
|
static |
Checks if WAITING_FOR_JOIN_AT_EXIT state is set.
This function returns true if the WAITING_FOR_JOIN_AT_EXIT state is set in the_states, and false otherwise.
the_states | The task state set to test. |
true | WAITING_FOR_JOIN_AT_EXIT state is set in the_states. |
false | WAITING_FOR_JOIN_AT_EXIT state is not set in the_states. |
Definition at line 267 of file statesimpl.h.
|
static |
Checks if WAITING_FOR_TIME state is set.
This function returns true if the WAITING_FOR_TIME state is set in the_states, and false otherwise.
the_states | The task state set to test. |
true | WAITING_FOR_TIME state is set in the_states. |
false | WAITING_FOR_TIME state is not set in the_states. |
Definition at line 249 of file statesimpl.h.
|
static |
Returns the result of setting the states to set to the given state.
This function sets the given states_to_set into the current_state passed in. The result is returned to the user in current_state.
states_to_set | The state bits to set. |
current_state | The state set to add them to. |
Definition at line 157 of file statesimpl.h.