RTEMS: Scheduler_Node Struct Reference

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
Data Fields
Scheduler_Node Struct Reference
Internal » SuperCore » Scheduler Handler

Scheduler node for per-thread data. More...

`#include <schedulernode.h>`

## Data Fields
struct _Thread_Control * | owner
| The thread owning this node.
struct {
Priority_Aggregation Priority
} | Wait
| Thread wait support block.
struct {
Priority_Control value
| The thread priority value of this scheduler node. More...
} | Priority
| The thread priority information used by the scheduler.

## Detailed Description

Scheduler node for per-thread data.

## Field Documentation

## ◆

struct { ... } Scheduler_Node::Priority

The thread priority information used by the scheduler.

The thread priority is manifest in two independent areas. One area is the user visible thread priority along with a potential thread queue. The other is the scheduler. During a thread priority change, the user visible thread priority and the thread queue are first updated and the thread priority value here is changed. Once this is done the scheduler is notified via the update priority operation, so that it can update its internal state and honour a new thread priority value.

## ◆ value

Priority_Control Scheduler_Node::value

The thread priority value of this scheduler node.

The producer of this value is _Thread_Change_priority(). The consumer is the scheduler via the unblock and update priority operations.

This priority control consists of two parts. One part is the plain priority value (most-significant 63 bits). The other part is the least-significant bit which indicates if the thread should be appended (bit set) or prepended (bit cleared) to its priority group, see SCHEDULER_PRIORITY_APPEND().

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

- cpukit/include/rtems/score/schedulernode.h