24 void _Rate_monotonic_Cancel(
33 _Rate_monotonic_Acquire_critical( the_period, lock_context );
44 _Rate_monotonic_Release( the_period, lock_context );
57 the_period = _Rate_monotonic_Get(
id, &lock_context );
58 if ( the_period == NULL ) {
62 executing = _Thread_Executing;
63 if ( executing != the_period->
owner ) {
68 _Rate_monotonic_Cancel( the_period, executing, &lock_context );
Thread queue context for the thread queue methods.
Watchdog_Control Timer
Protects the rate monotonic period state.
static __inline__ void _Scheduler_Cancel_job(Thread_Control *the_thread, Priority_Node *priority_node, Thread_queue_Context *queue_context)
Cancels a job of a thread with respect to the scheduler.
#define _ISR_lock_ISR_enable(_context)
Restores the saved interrupt state of the ISR lock context.
This status code indicates successful completion.
static __inline__ Per_CPU_Control * _Thread_Dispatch_disable_critical(const ISR_lock_Context *lock_context)
Disables thread dispatching inside a critical section (interrupts disabled).
rtems_status_code
This enumeration provides status codes for directives of the Classic API.
rtems_status_code rtems_rate_monotonic_cancel(rtems_id id)
%
void _Thread_Priority_update(Thread_queue_Context *queue_context)
Updates the priority of all threads in the set.
rtems_rate_monotonic_period_states state
void _Thread_Dispatch_enable(Per_CPU_Control *cpu_self)
Enables thread dispatching.
static __inline__ void _Watchdog_Per_CPU_remove_ticks(Watchdog_Control *the_watchdog)
Removes the watchdog from the cpu and the scheduled watchdogs.
The following structure defines the control block used to manage each period.
This status code indicates that an object identifier was invalid.
This status code indicates that the caller was not the owner of the resource.
Objects_Id rtems_id
Values of this type identify an RTEMS object.
Classic Rate Monotonic Scheduler Implementation.
Local ISR lock context for acquire and release pairs.
Priority_Node Priority
A priority node for use by the scheduler job release and cancel operations.