ChibiOS/RT  5.1.0
chschd.c File Reference

Scheduler code. More...

#include "ch.h"

Go to the source code of this file.

Functions

void _scheduler_init (void)
 Scheduler initialization. More...
 
void queue_prio_insert (thread_t *tp, threads_queue_t *tqp)
 Inserts a thread into a priority ordered queue. More...
 
void queue_insert (thread_t *tp, threads_queue_t *tqp)
 Inserts a thread into a queue. More...
 
thread_tqueue_fifo_remove (threads_queue_t *tqp)
 Removes the first-out thread from a queue and returns it. More...
 
thread_tqueue_lifo_remove (threads_queue_t *tqp)
 Removes the last-out thread from a queue and returns it. More...
 
thread_tqueue_dequeue (thread_t *tp)
 Removes a thread from a queue and returns it. More...
 
void list_insert (thread_t *tp, threads_list_t *tlp)
 Pushes a thread_t on top of a stack list. More...
 
thread_tlist_remove (threads_list_t *tlp)
 Pops a thread from the top of a stack list and returns it. More...
 
thread_tchSchReadyI (thread_t *tp)
 Inserts a thread in the Ready List placing it behind its peers. More...
 
thread_tchSchReadyAheadI (thread_t *tp)
 Inserts a thread in the Ready List placing it ahead its peers. More...
 
void chSchGoSleepS (tstate_t newstate)
 Puts the current thread to sleep into the specified state. More...
 
msg_t chSchGoSleepTimeoutS (tstate_t newstate, sysinterval_t timeout)
 Puts the current thread to sleep into the specified state with timeout specification. More...
 
void chSchWakeupS (thread_t *ntp, msg_t msg)
 Wakes up a thread. More...
 
void chSchRescheduleS (void)
 Performs a reschedule if a higher priority thread is runnable. More...
 
bool chSchIsPreemptionRequired (void)
 Evaluates if preemption is required. More...
 
void chSchDoRescheduleBehind (void)
 Switches to the first thread on the runnable queue. More...
 
void chSchDoRescheduleAhead (void)
 Switches to the first thread on the runnable queue. More...
 
void chSchDoReschedule (void)
 Switches to the first thread on the runnable queue. More...
 

Variables

ch_system_t ch
 System data structures. More...
 

Detailed Description

Scheduler code.

Definition in file chschd.c.