From 6c5640131fca82624f72b2bd33b5b5f46156626e Mon Sep 17 00:00:00 2001 From: Chris Johns Date: Sun, 12 Nov 2017 14:34:48 +1100 Subject: c-user: Fix index locations. Update #3229. --- c-user/rate_monotonic_manager.rst | 72 +++++++++++++++++++++------------------ 1 file changed, 38 insertions(+), 34 deletions(-) (limited to 'c-user/rate_monotonic_manager.rst') diff --git a/c-user/rate_monotonic_manager.rst b/c-user/rate_monotonic_manager.rst index 96539ed..ad675b0 100644 --- a/c-user/rate_monotonic_manager.rst +++ b/c-user/rate_monotonic_manager.rst @@ -5,12 +5,12 @@ .. COMMENT: COPYRIGHT (c) 2017 Kuan-Hsun Chen. .. COMMENT: All rights reserved. -Rate Monotonic Manager -********************** - .. index:: rate mononitonic tasks .. index:: periodic tasks +Rate Monotonic Manager +********************** + Introduction ============ @@ -133,9 +133,10 @@ milliseconds every 100 (10 percent of the CPU). As a general rule of thumb, the higher frequency at which a task executes, the more important it is to optimize that task. +.. index:: periodic task, definition + Periodicity Definitions ---------------------------------- -.. index:: periodic task, definition A periodic task is one which must be executed at a regular interval. The interval between successive iterations of the task is referred to as its @@ -165,11 +166,12 @@ joystick. The mechanical action of the fire button ensures a minimum time period between successive activations, but the missile must be launched by a hard deadline. -Rate Monotonic Scheduling Algorithm ------------------------------------ .. index:: Rate Monotonic Scheduling Algorithm, definition .. index:: RMS Algorithm, definition +Rate Monotonic Scheduling Algorithm +----------------------------------- + The Rate Monotonic Scheduling Algorithm (RMS) is important to real-time systems designers because it allows one to sufficiently guarantee that a set of tasks is schedulable (see :cite:`Liu:1973:Scheduling`, :cite:`Lehoczky:1989:RM`, @@ -229,11 +231,11 @@ highest priority non-critical task. Although RMS may be used to assign priorities to the non-critical tasks, it is not necessary. In this instance, schedulability is only guaranteed for the critical task set. +.. index:: RMS schedulability analysis + Schedulability Analysis ----------------------- -.. index:: RMS schedulability analysis - RMS allows application designers to ensure that tasks can meet all deadlines under fixed-priority assignment, even under transient overload, without knowing exactly when any given task will execute by applying proven schedulability analysis rules. @@ -261,9 +263,10 @@ assumptions: Once the basic schedulability analysis is understood, some of the above assumptions can be relaxed and the side-effects accounted for. +.. index:: RMS Processor Utilization Rule + Processor Utilization Rule ^^^^^^^^^^^^^^^^^^^^^^^^^^ -.. index:: RMS Processor Utilization Rule The Processor Utilization Rule requires that processor utilization be calculated based upon the period and execution time of each task. @@ -312,9 +315,10 @@ upper bound of 3 * (2**(1/3) - 1), or 0.779, imposed by the Processor Utilization Rule. Therefore, this task set is guaranteed to be schedulable using RMS. +.. index:: RMS First Deadline Rule + First Deadline Rule ^^^^^^^^^^^^^^^^^^^ -.. index:: RMS First Deadline Rule If a given set of tasks do exceed the processor utilization upper limit imposed by the Processor Utilization Rule, they can still be guaranteed to meet all @@ -631,11 +635,11 @@ sequence, related constants, usage, and status codes. \clearpage .. _rtems_rate_monotonic_create: +.. index:: create a period +.. index:: rtems_rate_monotonic_create RATE_MONOTONIC_CREATE - Create a rate monotonic period ------------------------------------------------------ -.. index:: create a period -.. index:: rtems_rate_monotonic_create CALLING SEQUENCE: .. code-block:: c @@ -671,13 +675,13 @@ NOTES: \clearpage .. _rtems_rate_monotonic_ident: - -RATE_MONOTONIC_IDENT - Get ID of a period ------------------------------------------ .. index:: get ID of a period .. index:: obtain ID of a period .. index:: rtems_rate_monotonic_ident +RATE_MONOTONIC_IDENT - Get ID of a period +----------------------------------------- + CALLING SEQUENCE: .. code-block:: c @@ -710,11 +714,11 @@ NOTES: \clearpage .. _rtems_rate_monotonic_cancel: +.. index:: cancel a period +.. index:: rtems_rate_monotonic_cancel RATE_MONOTONIC_CANCEL - Cancel a period --------------------------------------- -.. index:: cancel a period -.. index:: rtems_rate_monotonic_cancel CALLING SEQUENCE: .. code-block:: c @@ -752,10 +756,10 @@ NOTES: .. _rtems_rate_monotonic_delete: .. index:: rtems_rate_monotonic_delete +.. index:: delete a period RATE_MONOTONIC_DELETE - Delete a rate monotonic period ------------------------------------------------------ -.. index:: delete a period CALLING SEQUENCE: .. code-block:: c @@ -790,14 +794,14 @@ NOTES: \clearpage .. _rtems_rate_monotonic_period: - -RATE_MONOTONIC_PERIOD - Conclude current/Start next period ----------------------------------------------------------- .. index:: conclude current period .. index:: start current period .. index:: period initiation .. index:: rtems_rate_monotonic_period +RATE_MONOTONIC_PERIOD - Conclude current/Start next period +---------------------------------------------------------- + CALLING SEQUENCE: .. code-block:: c @@ -844,13 +848,13 @@ NOTES: \clearpage .. _rtems_rate_monotonic_get_status: - -RATE_MONOTONIC_GET_STATUS - Obtain status from a period -------------------------------------------------------- .. index:: get status of period .. index:: obtain status of period .. index:: rtems_rate_monotonic_get_status +RATE_MONOTONIC_GET_STATUS - Obtain status from a period +------------------------------------------------------- + CALLING SEQUENCE: .. code-block:: c @@ -909,13 +913,13 @@ NOTES: \clearpage .. _rtems_rate_monotonic_get_statistics: - -RATE_MONOTONIC_GET_STATISTICS - Obtain statistics from a period ---------------------------------------------------------------- .. index:: get statistics of period .. index:: obtain statistics of period .. index:: rtems_rate_monotonic_get_statistics +RATE_MONOTONIC_GET_STATISTICS - Obtain statistics from a period +--------------------------------------------------------------- + CALLING SEQUENCE: .. code-block:: c @@ -978,11 +982,11 @@ NOTES: \clearpage .. _rtems_rate_monotonic_reset_statistics: +.. index:: reset statistics of period +.. index:: rtems_rate_monotonic_reset_statistics RATE_MONOTONIC_RESET_STATISTICS - Reset statistics for a period --------------------------------------------------------------- -.. index:: reset statistics of period -.. index:: rtems_rate_monotonic_reset_statistics CALLING SEQUENCE: .. code-block:: c @@ -1012,11 +1016,11 @@ NOTES: \clearpage .. _rtems_rate_monotonic_reset_all_statistics: +.. index:: reset statistics of all periods +.. index:: rtems_rate_monotonic_reset_all_statistics RATE_MONOTONIC_RESET_ALL_STATISTICS - Reset statistics for all periods ---------------------------------------------------------------------- -.. index:: reset statistics of all periods -.. index:: rtems_rate_monotonic_reset_all_statistics CALLING SEQUENCE: .. code-block:: c @@ -1038,13 +1042,13 @@ NOTES: \clearpage .. _rtems_rate_monotonic_report_statistics: - -RATE_MONOTONIC_REPORT_STATISTICS - Print period statistics report ------------------------------------------------------------------ .. index:: print period statistics report .. index:: period statistics report .. index:: rtems_rate_monotonic_report_statistics +RATE_MONOTONIC_REPORT_STATISTICS - Print period statistics report +----------------------------------------------------------------- + CALLING SEQUENCE: .. code-block:: c -- cgit v1.2.3