RTEMS
Public Attributes | List of all members
Rate_monotonic_Control Struct Reference

The following structure defines the control block used to manage each period. More...

#include <ratemondata.h>

Public Attributes

Objects_Control Object
 
Watchdog_Control Timer
 Protects the rate monotonic period state. More...
 
rtems_rate_monotonic_period_states state
 
Priority_Node Priority
 A priority node for use by the scheduler job release and cancel operations.
 
uint32_t next_length
 
Thread_Controlowner
 
Timestamp_Control cpu_usage_period_initiated
 
Timestamp_Control time_period_initiated
 
Rate_monotonic_Statistics Statistics
 
uint32_t postponed_jobs
 
uint64_t latest_deadline
 

Detailed Description

The following structure defines the control block used to manage each period.

State changes are protected by the default thread lock of the owner thread. The owner thread is the thread that created the period object. The owner thread field is immutable after object creation.

Definition at line 69 of file ratemondata.h.

Member Data Documentation

◆ cpu_usage_period_initiated

Timestamp_Control Rate_monotonic_Control::cpu_usage_period_initiated

This field contains the cpu usage value of the owning thread when the period was initiated. It is used to compute the period's statistics.

Definition at line 107 of file ratemondata.h.

◆ latest_deadline

uint64_t Rate_monotonic_Control::latest_deadline

This field contains the tick of the latest deadline decided by the period watchdog.

Definition at line 130 of file ratemondata.h.

◆ next_length

uint32_t Rate_monotonic_Control::next_length

This field contains the length of the next period to be executed.

Definition at line 94 of file ratemondata.h.

◆ Object

Objects_Control Rate_monotonic_Control::Object

This field is the object management portion of a Period instance.

Definition at line 71 of file ratemondata.h.

◆ owner

Thread_Control* Rate_monotonic_Control::owner

This field contains a pointer to the TCB for the thread which owns and uses this period instance.

Definition at line 100 of file ratemondata.h.

◆ postponed_jobs

uint32_t Rate_monotonic_Control::postponed_jobs

This field contains the number of postponed jobs. When the watchdog timeout, this variable will be increased immediately.

Definition at line 124 of file ratemondata.h.

◆ state

rtems_rate_monotonic_period_states Rate_monotonic_Control::state

This field indicates the current state of the period.

Definition at line 82 of file ratemondata.h.

◆ Statistics

Rate_monotonic_Statistics Rate_monotonic_Control::Statistics

This field contains the statistics maintained for the period.

Definition at line 118 of file ratemondata.h.

◆ time_period_initiated

Timestamp_Control Rate_monotonic_Control::time_period_initiated

This field contains the wall time value when the period was initiated. It is used to compute the period's statistics.

Definition at line 113 of file ratemondata.h.

◆ Timer

Watchdog_Control Rate_monotonic_Control::Timer

Protects the rate monotonic period state.

This is the timer used to provide the unblocking mechanism.

Definition at line 79 of file ratemondata.h.


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