MDK-ARM Keil, MDK-ARM Datasheet - Page 46

KIT REALVIEW MCU DEVELOPMENT

MDK-ARM

Manufacturer Part Number
MDK-ARM
Description
KIT REALVIEW MCU DEVELOPMENT
Manufacturer
Keil
Type
Compiler and IDEr
Datasheets

Specifications of MDK-ARM

For Use With/related Products
ARM MCUs
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
46
Chapter 2. Developing With an RTOS
Pre-emptive Scheduling
If the round robin option is disabled in the
file, each task must be
RTX_Config.c
declared with a different priority. When the RTOS is started and the tasks are
created, the task with the highest priority will run.
In a pre-emptive RTOS, each
task has a different priority level
and will run until it is pre-empted
or has reached a blocking OS
call.
This task will run until it blocks,
i.e. it is forced to wait for an
event flag, semaphore, or other object. When it blocks, the next ready task with
the highest priority will be scheduled and will run until it blocks, or a higher
priority task becomes ready to run. Therefore, with pre-emptive scheduling we
build a hierarchy of task execution, with each task consuming variable amounts
of run time.
Round Robin Scheduling
A round-robin-based scheduling scheme can be created by enabling the round
robin option in the
file and declaring each task with the same
RTX_Config.c
priority.
In a round robin RTOS tasks will
run for a fixed period, or time
slice, or until they reach a
blocking OS call.
In this scheme, each task will be
allotted a fixed amount of run time before execution is passed to the next ready
task. If a task blocks before its time slice has expired, execution will be passed to
the next ready task.

Related parts for MDK-ARM