28 #include <rtems/sysinit.h> 60 _Rate_monotonic_Reset_statistics( the_period );
73 static void _Rate_monotonic_Manager_initialization(
void )
79 _Rate_monotonic_Manager_initialization,
80 RTEMS_SYSINIT_CLASSIC_RATE_MONOTONIC,
81 RTEMS_SYSINIT_ORDER_MIDDLE
This status code indicates you have attempted to create too many instances of a particular object cla...
static __inline__ void _Objects_Allocator_unlock(void)
Unlocks the object allocator mutex.
This header file defines support services of the API.
uint32_t rtems_name
This type is used to represent a Classic API object name.
Objects_Information _Rate_monotonic_Information
The Classic Rate Monotonic objects information.
Watchdog_Control Timer
Protects the rate monotonic period state.
Data Related to the Management of Processor Interrupt Levels.
Inlined Routines in the Watchdog Handler.
void _Objects_Initialize_information(Objects_Information *information)
Initializes the specified objects information.
static bool rtems_is_name_valid(rtems_status_code name)
Returns true, if the specified object name is valid, otherwise returns false.
static __inline__ void _Priority_Node_set_inactive(Priority_Node *node)
Sets the priority node inactive.
static __inline__ struct _Thread_Control * _Thread_Get_executing(void)
Returns the thread control block of the executing thread.
This header file defines the status codes and support functions of the Classic API.
static __inline__ void _Watchdog_Preinitialize(Watchdog_Control *the_watchdog, Per_CPU_Control *cpu)
Pre-initializes a watchdog.
rtems_status_code rtems_rate_monotonic_create(rtems_name name, rtems_id *id)
%
This status code indicates successful completion.
static __inline__ void _Objects_Open(Objects_Information *information, Objects_Control *the_object, Objects_Name name)
Places the_object control pointer and object name in the Local Pointer and Local Name Tables...
rtems_status_code
This enumeration provides status codes for directives of the Classic API.
rtems_rate_monotonic_period_states state
static __inline__ void _Watchdog_Initialize(Watchdog_Control *the_watchdog, Watchdog_Service_routine_entry routine)
Initializes a watchdog with a new service routine.
This status code indicates that a specified address was invalid.
The following structure defines the control block used to manage each period.
Objects_Id rtems_id
Values of this type identify an RTEMS object.
#define _ISR_lock_Initialize(_lock, _name)
Initializes an ISR lock.
Classic Rate Monotonic Scheduler Implementation.
static __inline__ Rate_monotonic_Control * _Rate_monotonic_Allocate(void)
Allocates a period control block from the inactive chain of free period control blocks.
This status code indicates that an object name was invalid.
Priority_Node Priority
A priority node for use by the scheduler job release and cancel operations.
Constants and Structures Related with the Thread Control Block.
static __inline__ void _Priority_Node_initialize(Priority_Node *node, Priority_Control priority)
Initializes the priority node to the given priority.