![]() |
RTEMS
5.0.0
|
Classic Rate Monotonic Scheduler Implementation. More...
#include <rtems/rtems/ratemondata.h>#include <rtems/score/objectimpl.h>#include <rtems/score/schedulerimpl.h>#include <rtems/score/threadimpl.h>#include <rtems/score/watchdogimpl.h>#include <string.h>Go to the source code of this file.
Macros | |
| #define | RATE_MONOTONIC_INTEND_TO_BLOCK ( THREAD_WAIT_CLASS_PERIOD | THREAD_WAIT_STATE_INTEND_TO_BLOCK ) |
| #define | RATE_MONOTONIC_BLOCKED ( THREAD_WAIT_CLASS_PERIOD | THREAD_WAIT_STATE_BLOCKED ) |
| #define | RATE_MONOTONIC_READY_AGAIN ( THREAD_WAIT_CLASS_PERIOD | THREAD_WAIT_STATE_READY_AGAIN ) |
Functions | |
| RTEMS_INLINE_ROUTINE Rate_monotonic_Control * | _Rate_monotonic_Allocate (void) |
| Allocates a period control block from the inactive chain of free period control blocks. More... | |
| RTEMS_INLINE_ROUTINE void | _Rate_monotonic_Acquire_critical (Rate_monotonic_Control *the_period, ISR_lock_Context *lock_context) |
| RTEMS_INLINE_ROUTINE void | _Rate_monotonic_Release (Rate_monotonic_Control *the_period, ISR_lock_Context *lock_context) |
| RTEMS_INLINE_ROUTINE Rate_monotonic_Control * | _Rate_monotonic_Get (Objects_Id id, ISR_lock_Context *lock_context) |
| void | _Rate_monotonic_Timeout (Watchdog_Control *watchdog) |
| bool | _Rate_monotonic_Get_status (const Rate_monotonic_Control *the_period, Timestamp_Control *wall_since_last_period, Timestamp_Control *cpu_since_last_period) |
| _Rate_monotonic_Get_status( More... | |
| void | _Rate_monotonic_Restart (Rate_monotonic_Control *the_period, Thread_Control *owner, ISR_lock_Context *lock_context) |
| void | _Rate_monotonic_Cancel (Rate_monotonic_Control *the_period, Thread_Control *owner, ISR_lock_Context *lock_context) |
| RTEMS_INLINE_ROUTINE void | _Rate_monotonic_Reset_min_time (Timestamp_Control *min_time) |
| RTEMS_INLINE_ROUTINE void | _Rate_monotonic_Reset_statistics (Rate_monotonic_Control *the_period) |
Classic Rate Monotonic Scheduler Implementation.
1.8.13