summaryrefslogtreecommitdiffstats
path: root/c-user/scheduling-concepts/introduction.rst
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2021-01-19 07:25:07 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2021-04-28 09:03:49 +0200
commit4a3259f1616fb6244f0ad72912487c5a38b5c300 (patch)
tree0e12dc09ce5067e882f8037927308c93c372fb1b /c-user/scheduling-concepts/introduction.rst
parentc-user: Generate interrupt manager documentation (diff)
downloadrtems-docs-4a3259f1616fb6244f0ad72912487c5a38b5c300.tar.bz2
c-user: Generate scheduling concepts documentation
The documentation is a consolidation of the comments in Doxygen markup and the documentation sources in Sphinx markup. The documentation was transfered to interface specification items. The documentation source files were generated from the items by a script. Update #3993.
Diffstat (limited to '')
-rw-r--r--c-user/scheduling-concepts/introduction.rst86
1 files changed, 65 insertions, 21 deletions
diff --git a/c-user/scheduling-concepts/introduction.rst b/c-user/scheduling-concepts/introduction.rst
index 92da6de..31de1c1 100644
--- a/c-user/scheduling-concepts/introduction.rst
+++ b/c-user/scheduling-concepts/introduction.rst
@@ -1,42 +1,86 @@
.. SPDX-License-Identifier: CC-BY-SA-4.0
-.. Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR)
+.. Copyright (C) 2013, 2021 embedded brains GmbH (http://www.embedded-brains.de)
+.. Copyright (C) 1988, 2017 On-Line Applications Research Corporation (OAR)
+
+.. This file is part of the RTEMS quality process and was automatically
+.. generated. If you find something that needs to be fixed or
+.. worded better please post a report or patch to an RTEMS mailing list
+.. or raise a bug report:
+..
+.. https://www.rtems.org/bugs.html
+..
+.. For information on updating and regenerating please refer to the How-To
+.. section in the Software Requirements Engineering chapter of the
+.. RTEMS Software Engineering manual. The manual is provided as a part of
+.. a release. For development sources please refer to the online
+.. documentation at:
+..
+.. https://docs.rtems.org
+
+.. Generated from spec:/rtems/scheduler/if/group
+
+.. _SchedulerManagerIntroduction:
Introduction
============
+.. The following list was generated from:
+.. spec:/rtems/scheduler/if/ident
+.. spec:/rtems/scheduler/if/ident-by-processor
+.. spec:/rtems/scheduler/if/ident-by-processor-set
+.. spec:/rtems/scheduler/if/get-maximum-priority
+.. spec:/rtems/scheduler/if/map-priority-to-posix
+.. spec:/rtems/scheduler/if/map-priority-from-posix
+.. spec:/rtems/scheduler/if/get-processor
+.. spec:/rtems/scheduler/if/get-processor-maximum
+.. spec:/rtems/scheduler/if/get-processor-set
+.. spec:/rtems/scheduler/if/add-processor
+.. spec:/rtems/scheduler/if/remove-processor
+
+The scheduling concepts relate to the allocation of processing time for tasks.
+
The concept of scheduling in real-time systems dictates the ability to provide
-an immediate response to specific external events, particularly the necessity of
-scheduling tasks to run within a specified time limit after the occurrence of
-an event. For example, software embedded in life-support systems used to
-monitor hospital patients must take instant action if a change in the patient's
+an immediate response to specific external events, particularly the necessity
+of scheduling tasks to run within a specified time limit after the occurrence
+of an event. For example, software embedded in life-support systems used to
+monitor hospital patients must take instant action if a change in the patient’s
status is detected.
The component of RTEMS responsible for providing this capability is
-appropriately called the scheduler. The scheduler's sole purpose is to
-allocate the all important resource of processor time to the various tasks
-competing for attention.
-
-The directives provided by the scheduler manager are:
+appropriately called the scheduler. The scheduler’s sole purpose is to allocate
+the all important resource of processor time to the various tasks competing for
+attention. The directives provided by the Scheduler Manager are:
-- :ref:`rtems_scheduler_ident`
+* :ref:`InterfaceRtemsSchedulerIdent` - Identifies a scheduler by the object
+ name.
-- :ref:`rtems_scheduler_ident_by_processor`
+* :ref:`InterfaceRtemsSchedulerIdentByProcessor` - Identifies a scheduler by
+ the processor index.
-- :ref:`rtems_scheduler_ident_by_processor_set`
+* :ref:`InterfaceRtemsSchedulerIdentByProcessorSet` - Identifies a scheduler by
+ the processor set.
-- :ref:`rtems_scheduler_get_maximum_priority`
+* :ref:`InterfaceRtemsSchedulerGetMaximumPriority` - Gets the maximum task
+ priority of the scheduler.
-- :ref:`rtems_scheduler_map_priority_to_posix`
+* :ref:`InterfaceRtemsSchedulerMapPriorityToPosix` - Maps a Classic API task
+ priority to the corresponding POSIX thread priority.
-- :ref:`rtems_scheduler_map_priority_from_posix`
+* :ref:`InterfaceRtemsSchedulerMapPriorityFromPosix` - Maps a POSIX thread
+ priority to the corresponding Classic API task priority.
-- :ref:`rtems_scheduler_get_processor`
+* :ref:`InterfaceRtemsSchedulerGetProcessor` - Returns the index of the current
+ processor.
-- :ref:`rtems_scheduler_get_processor_maximum`
+* :ref:`InterfaceRtemsSchedulerGetProcessorMaximum` - Returns the processor
+ maximum supported by the system.
-- :ref:`rtems_scheduler_get_processor_set`
+* :ref:`InterfaceRtemsSchedulerGetProcessorSet` - Gets the set of processors
+ owned by the scheduler.
-- :ref:`rtems_scheduler_add_processor`
+* :ref:`InterfaceRtemsSchedulerAddProcessor` - Adds the processor to the set of
+ processors owned by the scheduler.
-- :ref:`rtems_scheduler_remove_processor`
+* :ref:`InterfaceRtemsSchedulerRemoveProcessor` - Removes the processor from
+ the set of processors owned by the scheduler.