summaryrefslogtreecommitdiffstats
path: root/c-user/scheduling_concepts.rst
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2018-03-07 13:43:07 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-03-07 15:31:40 +0100
commit8010b6e3ca18a25ac580f8ce9d7f29440a6c242c (patch)
treef2d13e87678d0dd30f34937619be41bef9680eb5 /c-user/scheduling_concepts.rst
parentCONFIGURE_*_SIMPLE_TASK_CONSOLE_DRIVER (diff)
downloadrtems-docs-8010b6e3ca18a25ac580f8ce9d7f29440a6c242c.tar.bz2
c-user: Update CONFIGURE_SCHEDULER_NAME
Diffstat (limited to 'c-user/scheduling_concepts.rst')
-rw-r--r--c-user/scheduling_concepts.rst20
1 files changed, 18 insertions, 2 deletions
diff --git a/c-user/scheduling_concepts.rst b/c-user/scheduling_concepts.rst
index ff47e0a..5664d94 100644
--- a/c-user/scheduling_concepts.rst
+++ b/c-user/scheduling_concepts.rst
@@ -122,6 +122,8 @@ Uniprocessor Schedulers
All uniprocessor schedulers included in RTEMS are priority based. The
processor is allocated to the highest priority task allowed to run.
+.. _SchedulerPriority:
+
Deterministic Priority Scheduler
--------------------------------
@@ -138,6 +140,8 @@ system configured to support 256 priority levels.
This scheduler is only aware of a single core.
+.. _SchedulerPrioritySimple:
+
Simple Priority Scheduler
-------------------------
@@ -156,6 +160,8 @@ This scheduler is only aware of a single core.
.. index:: earliest deadline first scheduling
+.. _SchedulerEDF:
+
Earliest Deadline First Scheduler
---------------------------------
@@ -189,6 +195,8 @@ deadline. Moreover, the ``rtems_rate_monotonic_cancel`` and
.. index:: constant bandwidth server scheduling
+.. _SchedulerCBS:
+
Constant Bandwidth Server Scheduling (CBS)
------------------------------------------
@@ -224,12 +232,14 @@ All SMP schedulers included in RTEMS are priority based. The processors
managed by a scheduler instance are allocated to the highest priority tasks
allowed to run.
+.. _SchedulerSMPEDF:
+
Earliest Deadline First SMP Scheduler
-------------------------------------
A job-level fixed-priority scheduler using the Earliest Deadline First (EDF)
method. By convention, the maximum priority level is
-:math:`min(INT\_MAX, 2^{63} - 1)` for background tasks. The tasks with an
+:math:`min(INT\_MAX, 2^{62} - 1)` for background tasks. The tasks with an
active deadline have a higher priority than the background tasks. This
scheduler supports task processor affinities of one-to-one and one-to-all, e.g.
a task can execute on exactly one processor or all processors managed by the
@@ -239,9 +249,11 @@ must contain all online processors to select the one-to-all affinity. This is
to avoid pathological cases if processors are added/removed to/from the
scheduler instance at run-time. In case the processor affinity set contains
not all online processors, then a one-to-one affinity will be used selecting
-the processor with the largest index within the set of processores currently
+the processor with the largest index within the set of processors currently
owned by the scheduler instance.
+.. _SchedulerSMPPriority:
+
Deterministic Priority SMP Scheduler
------------------------------------
@@ -250,6 +262,8 @@ priority level for the ready tasks. The maximum priority level is
configurable. By default, the maximum priority level is 255 (256 priority
levels).
+.. _SchedulerSMPPrioritySimple:
+
Simple Priority SMP Scheduler
-----------------------------
@@ -257,6 +271,8 @@ A fixed-priority scheduler which uses a sorted chain for the ready tasks. By
convention, the maximum priority level is 255. The implementation limit is
actually :math:`2^{64} - 1`.
+.. _SchedulerSMPPriorityAffinity:
+
Aribitary Processor Affinity Priority SMP Scheduler
---------------------------------------------------