ChibiOS/RT 7.0.5
chschd.c File Reference

Scheduler code. More...

#include "ch.h"

Go to the source code of this file.

Functions

static thread_t__sch_ready_behind (thread_t *tp)
 Inserts a thread in the Ready List placing it behind its peers.
static thread_t__sch_ready_ahead (thread_t *tp)
 Inserts a thread in the Ready List placing it ahead its peers.
static void __sch_reschedule_behind (void)
 Switches to the first thread on the runnable queue.
static void __sch_reschedule_ahead (void)
 Switches to the first thread on the runnable queue.
static void __sch_wakeup (virtual_timer_t *vtp, void *p)
void ch_sch_prio_insert (ch_queue_t *qp, ch_queue_t *tp)
 Inserts a thread into a priority ordered queue.
thread_tchSchReadyI (thread_t *tp)
 Inserts a thread in the Ready List placing it behind its peers.
void chSchGoSleepS (tstate_t newstate)
 Puts the current thread to sleep into the specified state.
msg_t chSchGoSleepTimeoutS (tstate_t newstate, sysinterval_t timeout)
 Puts the current thread to sleep into the specified state with timeout specification.
void chSchWakeupS (thread_t *ntp, msg_t msg)
 Wakes up a thread.
void chSchRescheduleS (void)
 Performs a reschedule if a higher priority thread is runnable.
bool chSchIsPreemptionRequired (void)
 Evaluates if preemption is required.
void chSchDoPreemption (void)
 Switches to the first thread on the runnable queue.
void chSchPreemption (void)
 All-in-one preemption code.
void chSchDoYieldS (void)
 Yields the time slot.
thread_tchSchSelectFirst (void)
 Makes runnable the fist thread in the ready list, does not reschedule internally.

Detailed Description

Scheduler code.

Definition in file chschd.c.