57#ifndef _RTEMS_RTEMS_RATEMON_H
58#define _RTEMS_RTEMS_RATEMON_H
61#include <sys/_timespec.h>
134 struct timespec min_cpu_time;
140 struct timespec max_cpu_time;
146 struct timespec total_cpu_time;
152 struct timespec min_wall_time;
158 struct timespec max_wall_time;
164 struct timespec total_wall_time;
192 struct timespec since_last_period;
201 struct timespec executed_since_last_period;
217#define RTEMS_PERIOD_STATUS WATCHDOG_NO_TIMEOUT
This header file provides types used by the Classic API.
void rtems_rate_monotonic_report_statistics_with_plugin(const struct rtems_printer *printer)
Reports the period statistics using the printer plugin.
rtems_rate_monotonic_period_states
This enumeration defines the states in which a period may be.
Definition: ratemon.h:91
rtems_status_code rtems_rate_monotonic_get_statistics(rtems_id id, rtems_rate_monotonic_period_statistics *status)
Gets the statistics of the period.
Definition: ratemongetstatistics.c:45
rtems_status_code rtems_rate_monotonic_cancel(rtems_id id)
Cancels the period.
Definition: ratemoncancel.c:71
rtems_status_code rtems_rate_monotonic_period(rtems_id id, rtems_interval length)
Concludes the current period and start the next period, or gets the period status.
Definition: ratemonperiod.c:313
rtems_status_code rtems_rate_monotonic_delete(rtems_id id)
Deletes the period.
Definition: ratemondelete.c:45
void rtems_rate_monotonic_report_statistics(void)
Reports the period statistics using the printk() printer.
Definition: ratemonreportstatistics.c:178
rtems_status_code rtems_rate_monotonic_get_status(rtems_id id, rtems_rate_monotonic_period_status *status)
Gets the detailed status of the period.
Definition: ratemongetstatus.c:46
rtems_status_code rtems_rate_monotonic_ident(rtems_name name, rtems_id *id)
Identifies a period by the object name.
Definition: ratemonident.c:45
rtems_status_code rtems_rate_monotonic_create(rtems_name name, rtems_id *id)
Creates a period.
Definition: ratemoncreate.c:50
void rtems_rate_monotonic_reset_all_statistics(void)
Resets the statistics of all periods.
Definition: ratemonresetall.c:47
rtems_status_code rtems_rate_monotonic_reset_statistics(rtems_id id)
Resets the statistics of the period.
Definition: ratemonresetstatistics.c:44
@ RATE_MONOTONIC_ACTIVE
This status indicates the period is on the watchdog chain, and running. The owner may be executing or...
Definition: ratemon.h:102
@ RATE_MONOTONIC_EXPIRED
This status indicates the period is off the watchdog chain, and has expired. The owner may still exec...
Definition: ratemon.h:109
@ RATE_MONOTONIC_INACTIVE
This status indicates the period is off the watchdog chain, and has never been initialized.
Definition: ratemon.h:96
rtems_status_code
This enumeration provides status codes for directives of the Classic API.
Definition: status.h:85
uint32_t rtems_name
This type represents Classic API object names.
Definition: types.h:226
Objects_Id rtems_id
This type represents RTEMS object identifiers.
Definition: types.h:94
Watchdog_Interval rtems_interval
This type represents clock tick intervals.
Definition: types.h:114
This header file provides the status codes of Classic API directives and support functions.
This structure provides the statistics of a period.
Definition: ratemon.h:119
uint32_t missed_count
This member contains the number of periods missed.
Definition: ratemon.h:128
uint32_t count
This member contains the number of periods executed.
Definition: ratemon.h:123
This structure provides the detailed status of a period.
Definition: ratemon.h:174
uint32_t postponed_jobs_count
This member contains the count of jobs which are not released yet.
Definition: ratemon.h:206
rtems_rate_monotonic_period_states state
This member contains the state of the period.
Definition: ratemon.h:183
rtems_id owner
This member contains the identifier of the owner task of the period.
Definition: ratemon.h:178
This header file provides the interfaces of the Watchdog Handler related to watchdog ticks which are ...