[rtems-docs commit] c-user: Use sphinx glossary support

Sebastian Huber sebh at rtems.org
Thu Feb 2 10:24:06 UTC 2017


Module:    rtems-docs
Branch:    master
Commit:    3e005fed9a075227058a8c80ce43e26522b573e6
Changeset: http://git.rtems.org/rtems-docs/commit/?id=3e005fed9a075227058a8c80ce43e26522b573e6

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Thu Feb  2 11:22:59 2017 +0100

c-user: Use sphinx glossary support

Terms can be referenced via :term:`XYZ`.

---

 c-user/glossary.rst     | 1304 +++++++++++++++++++++++------------------------
 c-user/key_concepts.rst |   12 +-
 2 files changed, 658 insertions(+), 658 deletions(-)

diff --git a/c-user/glossary.rst b/c-user/glossary.rst
index 44f8f88..f3e784e 100644
--- a/c-user/glossary.rst
+++ b/c-user/glossary.rst
@@ -3,756 +3,756 @@
 Glossary
 ********
 
-:dfn:`active`
-    A term used to describe an object which has been created by an application.
+.. glossary::
+   :sorted:
 
-:dfn:`aperiodic task`
-    A task which must execute only at irregular intervals and has only a soft
-    deadline.
+   active
+      A term used to describe an object which has been created by an
+      application.
 
-:dfn:`application`
-    In this document, software which makes use of RTEMS.
+   aperiodic task
+      A task which must execute only at irregular intervals and has only a soft
+      deadline.
 
-:dfn:`ASR`
-    see Asynchronous Signal Routine.
+   application
+      In this document, software which makes use of RTEMS.
 
-:dfn:`asynchronous`
-    Not related in order or timing to other occurrences in the system.
+   ASR
+      see Asynchronous Signal Routine.
 
-:dfn:`Asynchronous Signal Routine`
-    Similar to a hardware interrupt except that it is associated with a task
-    and is run in the context of a task.  The directives provided by the signal
-    manager are used to service signals.
+   asynchronous
+      Not related in order or timing to other occurrences in the system.
 
-:dfn:`atomic operations`
-    Atomic operations are defined in terms of :ref:`C11 <C11>`.
+   Asynchronous Signal Routine
+      Similar to a hardware interrupt except that it is associated with a task
+      and is run in the context of a task.  The directives provided by the
+      signal manager are used to service signals.
 
-:dfn:`awakened`
-    A term used to describe a task that has been unblocked and may be scheduled
-    to the CPU.
+   atomic operations
+      Atomic operations are defined in terms of :term:`C11`.
 
-:dfn:`big endian`
-    A data representation scheme in which the bytes composing a numeric value
-    are arranged such that the most significant byte is at the lowest address.
+   awakened
+      A term used to describe a task that has been unblocked and may be
+      scheduled to the CPU.
 
-:dfn:`bit-mapped`
-    A data encoding scheme in which each bit in a variable is used to represent
-    something different.  This makes for compact data representation.
+   big endian
+      A data representation scheme in which the bytes composing a numeric value
+      are arranged such that the most significant byte is at the lowest
+      address.
 
-:dfn:`block`
-    A physically contiguous area of memory.
+   bit-mapped
+      A data encoding scheme in which each bit in a variable is used to
+      represent something different.  This makes for compact data
+      representation.
 
-:dfn:`blocked task`
-    The task state entered by a task which has been previously started and
-    cannot continue execution until the reason for waiting has been satisfied.
-    Blocked tasks are not an element of the set of ready tasks of a scheduler
-    instance.
+   block
+      A physically contiguous area of memory.
 
-:dfn:`broadcast`
-    To simultaneously send a message to a logical set of destinations.
+   blocked task
+      The task state entered by a task which has been previously started and
+      cannot continue execution until the reason for waiting has been
+      satisfied.  Blocked tasks are not an element of the set of ready tasks of
+      a scheduler instance.
 
-:dfn:`BSP`
-    see Board Support Package.
+   broadcast
+      To simultaneously send a message to a logical set of destinations.
 
-:dfn:`Board Support Package`
-    A collection of device initialization and control routines specific to a
-    particular type of board or collection of boards.
+   BSP
+      see Board Support Package.
 
-:dfn:`buffer`
-    A fixed length block of memory allocated from a partition.
+   Board Support Package
+      A collection of device initialization and control routines specific to a
+      particular type of board or collection of boards.
 
-.. _C11:
+   buffer
+      A fixed length block of memory allocated from a partition.
 
-:dfn:`C11`
-    The standard ISO/IEC 9899:2011.
+   C11
+      The standard ISO/IEC 9899:2011.
 
-.. _C++11:
+   C++11
+      The standard ISO/IEC 14882:2011.
 
-:dfn:`C++11`
-    The standard ISO/IEC 14882:2011.
+   calling convention
+      The processor and compiler dependent rules which define the mechanism
+      used to invoke subroutines in a high-level language.  These rules define
+      the passing of arguments, the call and return mechanism, and the register
+      set which must be preserved.
 
-:dfn:`calling convention`
-    The processor and compiler dependent rules which define the mechanism used
-    to invoke subroutines in a high-level language.  These rules define the
-    passing of arguments, the call and return mechanism, and the register set
-    which must be preserved.
+   Central Processing Unit
+      This term is equivalent to the terms processor and microprocessor.
 
-:dfn:`Central Processing Unit`
-    This term is equivalent to the terms processor and microprocessor.
+   chain
+      A data structure which allows for efficient dynamic addition and removal
+      of elements.  It differs from an array in that it is not limited to a
+      predefined size.
 
-:dfn:`chain`
-    A data structure which allows for efficient dynamic addition and removal of
-    elements.  It differs from an array in that it is not limited to a
-    predefined size.
+   cluster
+      We have clustered scheduling in case the set of processors of a system is
+      partitioned into non-empty pairwise disjoint subsets.  These subsets are
+      calledclusters.  Clusters with a cardinality of one are partitions.  Each
+      cluster is owned by exactly one scheduler instance.
 
-:dfn:`cluster`
-    We have clustered scheduling in case the set of processors of a system is
-    partitioned into non-empty pairwise disjoint subsets.  These subsets are
-    called:dfn:`clusters`.  Clusters with a cardinality of one are partitions.
-    Each cluster is owned by exactly one scheduler instance.
+   coalesce
+      The process of merging adjacent holes into a single larger hole.
+      Sometimes this process is referred to as garbage collection.
 
-:dfn:`coalesce`
-    The process of merging adjacent holes into a single larger hole.  Sometimes
-    this process is referred to as garbage collection.
+   Configuration Table
+      A table which contains information used to tailor RTEMS for a particular
+      application.
 
-:dfn:`Configuration Table`
-    A table which contains information used to tailor RTEMS for a particular
-    application.
+   context
+      All of the processor registers and operating system data structures
+      associated with a task.
 
-:dfn:`context`
-    All of the processor registers and operating system data structures
-    associated with a task.
+   context switch
+      Alternate term for task switch.  Taking control of the processor from one
+      task and transferring it to another task.
 
-:dfn:`context switch`
-    Alternate term for task switch.  Taking control of the processor from one
-    task and transferring it to another task.
+   control block
+      A data structure used by the executive to define and control an object.
 
-:dfn:`control block`
-    A data structure used by the executive to define and control an object.
+   core
+      When used in this manual, this term refers to the internal executive
+      utility functions.  In the interest of application portability, the core
+      of the executive should not be used directly by applications.
 
-:dfn:`core`
-    When used in this manual, this term refers to the internal executive
-    utility functions.  In the interest of application portability, the core of
-    the executive should not be used directly by applications.
+   CPU
+      An acronym for Central Processing Unit.
 
-:dfn:`CPU`
-    An acronym for Central Processing Unit.
+   critical section
+      A section of code which must be executed indivisibly.
 
-:dfn:`critical section`
-    A section of code which must be executed indivisibly.
+   CRT
+      An acronym for Cathode Ray Tube.  Normally used in reference to the
+      man-machine interface.
+
+   deadline
+      A fixed time limit by which a task must have completed a set of actions.
+      Beyond this point, the results are of reduced value and may even be
+      considered useless or harmful.
+
+   device
+      A peripheral used by the application that requires special operation
+      software.  See also device driver.
+
+   device driver
+      Control software for special peripheral devices used by the application.
+
+   directives
+      RTEMS' provided routines that provide support mechanisms for real-time
+      applications.
+
+   dispatch
+      The act of loading a task's context onto the CPU and transferring control
+      of the CPU to that task.
+
+   dormant
+      The state entered by a task after it is created and before it has been
+      started.
+
+   Device Driver Table
+      A table which contains the entry points for each of the configured device
+      drivers.
+
+   dual-ported
+      A term used to describe memory which can be accessed at two different
+      addresses.
+
+   embedded
+      An application that is delivered as a hidden part of a larger system.
+      For example, the software in a fuel-injection control system is an
+      embedded application found in many late-model automobiles.
 
-:dfn:`CRT`
-    An acronym for Cathode Ray Tube.  Normally used in reference to the
-    man-machine interface.
+   envelope
+      A buffer provided by the MPCI layer to RTEMS which is used to pass
+      messages between nodes in a multiprocessor system.  It typically contains
+      routing information needed by the MPCI.  The contents of an envelope are
+      referred to as a packet.
+
+   entry point
+      The address at which a function or task begins to execute.  In C, the
+      entry point of a function is the function's name.
+
+   events
+      A method for task communication and synchronization. The directives
+      provided by the event manager are used to service events.
 
-:dfn:`deadline`
-    A fixed time limit by which a task must have completed a set of actions.
-    Beyond this point, the results are of reduced value and may even be
-    considered useless or harmful.
+   exception
+      A synonym for interrupt.
 
-:dfn:`device`
-    A peripheral used by the application that requires special operation
-    software.  See also device driver.
+   executing task
+      The task state entered by a task after it has been given control of the
+      processor.  In SMP configurations, a task may be registered as executing
+      on more than one processor for short time frames during task migration.
+      Blocked tasks can be executing until they issue a thread dispatch.
 
-:dfn:`device driver`
-    Control software for special peripheral devices used by the application.
+   executive
+      In this document, this term is used to referred to RTEMS.  Commonly, an
+      executive is a small real-time operating system used in embedded systems.
 
-:dfn:`directives`
-    RTEMS' provided routines that provide support mechanisms for real-time
-    applications.
+   exported
+      An object known by all nodes in a multiprocessor system.  An object
+      created with the GLOBAL attribute will be exported.
 
-:dfn:`dispatch`
-    The act of loading a task's context onto the CPU and transferring control
-    of the CPU to that task.
+   external address
+      The address used to access dual-ported memory by all the nodes in a
+      system which do not own the memory.
 
-:dfn:`dormant`
-    The state entered by a task after it is created and before it has been
-    started.
+   FIFO
+      An acronym for First In First Out.
+
+   First In First Out
+      A discipline for manipulating entries in a data structure.
 
-:dfn:`Device Driver Table`
-    A table which contains the entry points for each of the configured device
-    drivers.
+   floating point coprocessor
+      A component used in computer systems to enhance performance in
+      mathematically intensive situations.  It is typically viewed as a logical
+      extension of the primary processor.
 
-:dfn:`dual-ported`
-    A term used to describe memory which can be accessed at two different
-    addresses.
+   freed
+      A resource that has been released by the application to RTEMS.
+
+   global
+      An object that has been created with the GLOBAL attribute and exported to
+      all nodes in a multiprocessor system.
 
-:dfn:`embedded`
-    An application that is delivered as a hidden part of a larger system.  For
-    example, the software in a fuel-injection control system is an embedded
-    application found in many late-model automobiles.
+   handler
+      The equivalent of a manager, except that it is internal to RTEMS and
+      forms part of the core.  A handler is a collection of routines which
+      provide a related set of functions.  For example, there is a handler used
+      by RTEMS to manage all objects.
 
-:dfn:`envelope`
-    A buffer provided by the MPCI layer to RTEMS which is used to pass messages
-    between nodes in a multiprocessor system.  It typically contains routing
-    information needed by the MPCI.  The contents of an envelope are referred
-    to as a packet.
-
-:dfn:`entry point`
-    The address at which a function or task begins to execute.  In C, the entry
-    point of a function is the function's name.
-
-:dfn:`events`
-    A method for task communication and synchronization. The directives
-    provided by the event manager are used to service events.
+   hard real-time system
+      A real-time system in which a missed deadline causes the worked performed
+      to have no value or to result in a catastrophic effect on the integrity
+      of the system.
 
-:dfn:`exception`
-    A synonym for interrupt.
+   heap
+      A data structure used to dynamically allocate and deallocate variable
+      sized blocks of memory.
 
-:dfn:`executing task`
-    The task state entered by a task after it has been given control of the
-    processor.  In SMP configurations, a task may be registered as executing on
-    more than one processor for short time frames during task migration.
-    Blocked tasks can be executing until they issue a thread dispatch.
+   heir task
+      A task is an heir if it is registered as an heir in a processor of the
+      system.  A task can be the heir on at most one processor in the system.
+      In case the executing and heir tasks differ on a processor and a thread
+      dispatch is marked as necessary, then the next thread dispatch will make
+      the heir task the executing task.
 
-:dfn:`executive`
-    In this document, this term is used to referred to RTEMS.  Commonly, an
-    executive is a small real-time operating system used in embedded systems.
+   heterogeneous
+      A multiprocessor computer system composed of dissimilar processors.
 
-:dfn:`exported`
-    An object known by all nodes in a multiprocessor system.  An object created
-    with the GLOBAL attribute will be exported.
+   homogeneous
+      A multiprocessor computer system composed of a single type of processor.
 
-:dfn:`external address`
-    The address used to access dual-ported memory by all the nodes in a system
-    which do not own the memory.
+   ID
+      An RTEMS assigned identification tag used to access an active object.
 
-:dfn:`FIFO`
-    An acronym for First In First Out.
+   IDLE task
+      A special low priority task which assumes control of the CPU when no
+      other task is able to execute.
 
-:dfn:`First In First Out`
-    A discipline for manipulating entries in a data structure.
+   interface
+      A specification of the methodology used to connect multiple independent
+      subsystems.
 
-:dfn:`floating point coprocessor`
-    A component used in computer systems to enhance performance in
-    mathematically intensive situations.  It is typically viewed as a logical
-    extension of the primary processor.
+   internal address
+      The address used to access dual-ported memory by the node which owns the
+      memory.
 
-:dfn:`freed`
-    A resource that has been released by the application to RTEMS.
+   interrupt
+      A hardware facility that causes the CPU to suspend execution, save its
+      status, and transfer control to a specific location.
 
-:dfn:`global`
-    An object that has been created with the GLOBAL attribute and exported to
-    all nodes in a multiprocessor system.
+   interrupt level
+      A mask used to by the CPU to determine which pending interrupts should be
+      serviced.  If a pending interrupt is below the current interrupt level,
+      then the CPU does not recognize that interrupt.
 
-:dfn:`handler`
-    The equivalent of a manager, except that it is internal to RTEMS and forms
-    part of the core.  A handler is a collection of routines which provide a
-    related set of functions.  For example, there is a handler used by RTEMS to
-    manage all objects.
+   Interrupt Service Routine
+      An ISR is invoked by the CPU to process a pending interrupt.
 
-:dfn:`hard real-time system`
-    A real-time system in which a missed deadline causes the worked performed
-    to have no value or to result in a catastrophic effect on the integrity of
-    the system.
+   I/O
+      An acronym for Input/Output.
 
-:dfn:`heap`
-    A data structure used to dynamically allocate and deallocate variable sized
-    blocks of memory.
+   ISR
+      An acronym for Interrupt Service Routine.
 
-:dfn:`heir task`
-    A task is an :dfn:`heir` if it is registered as an heir in a processor of
-    the system.  A task can be the heir on at most one processor in the system.
-    In case the executing and heir tasks differ on a processor and a thread
-    dispatch is marked as necessary, then the next thread dispatch will make
-    the heir task the executing task.
+   kernel
+      In this document, this term is used as a synonym for executive.
 
-:dfn:`heterogeneous`
-    A multiprocessor computer system composed of dissimilar processors.
+   list
+      A data structure which allows for dynamic addition and removal of
+      entries.  It is not statically limited to a particular size.
 
-:dfn:`homogeneous`
-    A multiprocessor computer system composed of a single type of processor.
+   little endian
+      A data representation scheme in which the bytes composing a numeric value
+      are arranged such that the least significant byte is at the lowest
+      address.
 
-:dfn:`ID`
-    An RTEMS assigned identification tag used to access an active object.
+   local
+      An object which was created with the LOCAL attribute and is accessible
+      only on the node it was created and resides upon.  In a single processor
+      configuration, all objects are local.
 
-:dfn:`IDLE task`
-    A special low priority task which assumes control of the CPU when no other
-    task is able to execute.
+   local operation
+      The manipulation of an object which resides on the same node as the
+      calling task.
 
-:dfn:`interface`
-    A specification of the methodology used to connect multiple independent
-    subsystems.
+   logical address
+      An address used by an application.  In a system without memory
+      management, logical addresses will equal physical addresses.
 
-:dfn:`internal address`
-    The address used to access dual-ported memory by the node which owns the
-    memory.
+   loosely-coupled
+      A multiprocessor configuration where shared memory is not used for
+      communication.
 
-:dfn:`interrupt`
-    A hardware facility that causes the CPU to suspend execution, save its
-    status, and transfer control to a specific location.
+   major number
+      The index of a device driver in the Device Driver Table.
 
-:dfn:`interrupt level`
-    A mask used to by the CPU to determine which pending interrupts should be
-    serviced.  If a pending interrupt is below the current interrupt level,
-    then the CPU does not recognize that interrupt.
+   manager
+      A group of related RTEMS' directives which provide access and control
+      over resources.
 
-:dfn:`Interrupt Service Routine`
-    An ISR is invoked by the CPU to process a pending interrupt.
+   memory pool
+      Used interchangeably with heap.
 
-:dfn:`I/O`
-    An acronym for Input/Output.
+   message
+      A sixteen byte entity used to communicate between tasks.  Messages are
+      sent to message queues and stored in message buffers.
 
-:dfn:`ISR`
-    An acronym for Interrupt Service Routine.
+   message buffer
+      A block of memory used to store messages.
 
-:dfn:`kernel`
-    In this document, this term is used as a synonym for executive.
+   message queue
+      An RTEMS object used to synchronize and communicate between tasks by
+      transporting messages between sending and receiving tasks.
 
-:dfn:`list`
-    A data structure which allows for dynamic addition and removal of entries.
-    It is not statically limited to a particular size.
+   Message Queue Control Block
+      A data structure associated with each message queue used by RTEMS to
+      manage that message queue.
 
-:dfn:`little endian`
-    A data representation scheme in which the bytes composing a numeric value
-    are arranged such that the least significant byte is at the lowest address.
+   minor number
+      A numeric value passed to a device driver, the exact usage of which is
+      driver dependent.
 
-:dfn:`local`
-    An object which was created with the LOCAL attribute and is accessible only
-    on the node it was created and resides upon.  In a single processor
-    configuration, all objects are local.
+   mode
+      An entry in a task's control block that is used to determine if the task
+      allows preemption, timeslicing, processing of signals, and the interrupt
+      disable level used by the task.
 
-:dfn:`local operation`
-    The manipulation of an object which resides on the same node as the calling
-    task.
+   MPCI
+      An acronym for Multiprocessor Communications Interface Layer.
 
-:dfn:`logical address`
-    An address used by an application.  In a system without memory management,
-    logical addresses will equal physical addresses.
+   multiprocessing
+      The simultaneous execution of two or more processes by a multiple
+      processor computer system.
 
-:dfn:`loosely-coupled`
-    A multiprocessor configuration where shared memory is not used for
-    communication.
+   multiprocessor
+      A computer with multiple CPUs available for executing applications.
 
-:dfn:`major number`
-    The index of a device driver in the Device Driver Table.
+   Multiprocessor Communications Interface Layer
+      A set of user-provided routines which enable the nodes in a
+      multiprocessor system to communicate with one another.
 
-:dfn:`manager`
-    A group of related RTEMS' directives which provide access and control over
-    resources.
+   Multiprocessor Configuration Table
+      The data structure defining the characteristics of the multiprocessor
+      target system with which RTEMS will communicate.
 
-:dfn:`memory pool`
-    Used interchangeably with heap.
+   multitasking
+      The alternation of execution amongst a group of processes on a single
+      CPU.  A scheduling algorithm is used to determine which process executes
+      at which time.
 
-:dfn:`message`
-    A sixteen byte entity used to communicate between tasks.  Messages are sent
-    to message queues and stored in message buffers.
+   mutual exclusion
+      A term used to describe the act of preventing other tasks from accessing
+      a resource simultaneously.
 
-:dfn:`message buffer`
-    A block of memory used to store messages.
+   nested
+      A term used to describe an ASR that occurs during another ASR or an ISR
+      that occurs during another ISR.
 
-:dfn:`message queue`
-    An RTEMS object used to synchronize and communicate between tasks by
-    transporting messages between sending and receiving tasks.
+   node
+      A term used to reference a processor running RTEMS in a multiprocessor
+      system.
+
+   non-existent
+      The state occupied by an uncreated or deleted task.
+
+   numeric coprocessor
+      A component used in computer systems to enhance performance in
+      mathematically intensive situations.  It is typically viewed as a logical
+      extension of the primary processor.
 
-:dfn:`Message Queue Control Block`
-    A data structure associated with each message queue used by RTEMS to manage
-    that message queue.
+   object
+      In this document, this term is used to refer collectively to tasks,
+      timers, message queues, partitions, regions, semaphores, ports, and rate
+      monotonic periods.  All RTEMS objects have IDs and user-assigned names.
 
-:dfn:`minor number`
-    A numeric value passed to a device driver, the exact usage of which is
-    driver dependent.
+   object-oriented
+      A term used to describe systems with common mechanisms for utilizing a
+      variety of entities.  Object-oriented systems shield the application from
+      implementation details.
 
-:dfn:`mode`
-    An entry in a task's control block that is used to determine if the task
-    allows preemption, timeslicing, processing of signals, and the interrupt
-    disable level used by the task.
+   operating system
+      The software which controls all the computer's resources and provides the
+      base upon which application programs can be written.
 
-:dfn:`MPCI`
-    An acronym for Multiprocessor Communications Interface Layer.
+   overhead
+      The portion of the CPUs processing power consumed by the operating
+      system.
 
-:dfn:`multiprocessing`
-    The simultaneous execution of two or more processes by a multiple processor
-    computer system.
+   packet
+      A buffer which contains the messages passed between nodes in a
+      multiprocessor system.  A packet is the contents of an envelope.
 
-:dfn:`multiprocessor`
-    A computer with multiple CPUs available for executing applications.
+   partition
+      An RTEMS object which is used to allocate and deallocate fixed size
+      blocks of memory from an dynamically specified area of memory.
 
-:dfn:`Multiprocessor Communications Interface Layer`
-    A set of user-provided routines which enable the nodes in a multiprocessor
-    system to communicate with one another.
+   partition
+      Clusters with a cardinality of one are partitions.
 
-:dfn:`Multiprocessor Configuration Table`
-    The data structure defining the characteristics of the multiprocessor
-    target system with which RTEMS will communicate.
+   Partition Control Block
+      A data structure associated with each partition used by RTEMS to manage
+      that partition.
 
-:dfn:`multitasking`
-    The alternation of execution amongst a group of processes on a single CPU.
-    A scheduling algorithm is used to determine which process executes at which
-    time.
+   pending
+      A term used to describe a task blocked waiting for an event, message,
+      semaphore, or signal.
 
-:dfn:`mutual exclusion`
-    A term used to describe the act of preventing other tasks from accessing a
-    resource simultaneously.
+   periodic task
+      A task which must execute at regular intervals and comply with a hard
+      deadline.
+
+   physical address
+      The actual hardware address of a resource.
 
-:dfn:`nested`
-    A term used to describe an ASR that occurs during another ASR or an ISR
-    that occurs during another ISR.
+   poll
+      A mechanism used to determine if an event has occurred by periodically
+      checking for a particular status.  Typical events include arrival of
+      data, completion of an action, and errors.
+
+   pool
+      A collection from which resources are allocated.
 
-:dfn:`node`
-    A term used to reference a processor running RTEMS in a multiprocessor
-    system.
+   portability
+      A term used to describe the ease with which software can be rehosted on
+      another computer.
 
-:dfn:`non-existent`
-    The state occupied by an uncreated or deleted task.
+   posting
+      The act of sending an event, message, semaphore, or signal to a task.
 
-:dfn:`numeric coprocessor`
-    A component used in computer systems to enhance performance in
-    mathematically intensive situations.  It is typically viewed as a logical
-    extension of the primary processor.
+   preempt
+      The act of forcing a task to relinquish the processor and dispatching to
+      another task.
 
-:dfn:`object`
-    In this document, this term is used to refer collectively to tasks, timers,
-    message queues, partitions, regions, semaphores, ports, and rate monotonic
-    periods.  All RTEMS objects have IDs and user-assigned names.
+   priority
+      A mechanism used to represent the relative importance of an element in a
+      set of items.  RTEMS uses priority to determine which task should
+      execute.
+
+   priority boosting
+      A simple approach to extend the priority inheritance protocol for
+      clustered scheduling is priority boosting.  In case a mutex is owned by a
+      task of another cluster, then the priority of the owner task is raised to
+      an artificially high priority, the pseudo-interrupt priority.
 
-:dfn:`object-oriented`
-    A term used to describe systems with common mechanisms for utilizing a
-    variety of entities.  Object-oriented systems shield the application from
-    implementation details.
+   priority inheritance
+      An algorithm that calls for the lower priority task holding a resource to
+      have its priority increased to that of the highest priority task blocked
+      waiting for that resource.  This avoids the problem of priority
+      inversion.
 
-:dfn:`operating system`
-    The software which controls all the computer's resources and provides the
-    base upon which application programs can be written.
+   priority inversion
+      A form of indefinite postponement which occurs when a high priority tasks
+      requests access to shared resource currently allocated to low priority
+      task.  The high priority task must block until the low priority task
+      releases the resource.
 
-:dfn:`overhead`
-    The portion of the CPUs processing power consumed by the operating system.
+   processor utilization
+      The percentage of processor time used by a task or a set of tasks.
 
-:dfn:`packet`
-    A buffer which contains the messages passed between nodes in a
-    multiprocessor system.  A packet is the contents of an envelope.
+   proxy
+      An RTEMS control structure used to represent, on a remote node, a task
+      which must block as part of a remote operation.
+
+   Proxy Control Block
+      A data structure associated with each proxy used by RTEMS to manage that
+      proxy.
+
+   PTCB
+      An acronym for Partition Control Block.
+
+   PXCB
+      An acronym for Proxy Control Block.
+
+   quantum
+      The application defined unit of time in which the processor is allocated.
+
+   queue
+      Alternate term for message queue.
+
+   QCB
+      An acronym for Message Queue Control Block.
+
+   ready task
+      A task occupies this state when it is available to be given control of a
+      processor.  A ready task has no processor assigned.  The scheduler
+      decided that other tasks are currently more important.  A task that is
+      ready to execute and has a processor assigned is called scheduled.
 
-:dfn:`partition`
-    An RTEMS object which is used to allocate and deallocate fixed size blocks
-    of memory from an dynamically specified area of memory.
+   real-time
+      A term used to describe systems which are characterized by requiring
+      deterministic response times to external stimuli.  The external stimuli
+      require that the response occur at a precise time or the response is
+      incorrect.
+
+   reentrant
+      A term used to describe routines which do not modify themselves or global
+      variables.
+
+   region
+      An RTEMS object which is used to allocate and deallocate variable size
+      blocks of memory from a dynamically specified area of memory.
+
+   Region Control Block
+      A data structure associated with each region used by RTEMS to manage that
+      region.
+
+   registers
+      Registers are locations physically located within a component, typically
+      used for device control or general purpose storage.
+
+   remote
+      Any object that does not reside on the local node.
+
+   remote operation
+      The manipulation of an object which does not reside on the same node as
+      the calling task.
+
+   return code
+      Also known as error code or return value.
+
+   resource
+      A hardware or software entity to which access must be controlled.
+
+   resume
+      Removing a task from the suspend state.  If the task's state is ready
+      following a call to the ``rtems_task_resume`` directive, then the task is
+      available for scheduling.
+
+   return code
+      A value returned by RTEMS directives to indicate the completion status of
+      the directive.
+
+   RNCB
+      An acronym for Region Control Block.
+
+   round-robin
+      A task scheduling discipline in which tasks of equal priority are
+      executed in the order in which they are made ready.
+
+   RS-232
+      A standard for serial communications.
+
+   running
+      The state of a rate monotonic timer while it is being used to delineate a
+      period.  The timer exits this state by either expiring or being canceled.
+
+   schedulable
+      A set of tasks which can be guaranteed to meet their deadlines based upon
+      a specific scheduling algorithm.
+
+   schedule
+      The process of choosing which task should next enter the executing state.
+
+   scheduled task
+      A task is scheduled if it is allowed to execute and has a processor
+      assigned.  Such a task executes currently on a processor or is about to
+      start execution.  A task about to start execution it is an heir task on
+      exactly one processor in the system.
+
+   scheduler
+      A scheduler or scheduling algorithm allocates processors to a subset of
+      its set of ready tasks.  So it manages access to the processor resource.
+      Various algorithms exist to choose the tasks allowed to use a processor
+      out of the set of ready tasks.  One method is to assign each task a
+      priority number and assign the tasks with the lowest priority number to
+      one processor of the set of processors owned by a scheduler instance.
+
+   scheduler instance
+      A scheduler instance is a scheduling algorithm with a corresponding
+      context to store its internal state.  Each processor in the system is
+      owned by at most one scheduler instance.  The processor to scheduler
+      instance assignment is determined at application configuration time.  See
+      :ref:`Configuring a System`.
+
+   segments
+      Variable sized memory blocks allocated from a region.
+
+   semaphore
+      An RTEMS object which is used to synchronize tasks and provide mutually
+      exclusive access to resources.
+
+   Semaphore Control Block
+      A data structure associated with each semaphore used by RTEMS to manage
+      that semaphore.
+
+   shared memory
+      Memory which is accessible by multiple nodes in a multiprocessor system.
+
+   signal
+      An RTEMS provided mechanism to communicate asynchronously with a task.
+      Upon reception of a signal, the ASR of the receiving task will be
+      invoked.
+
+   signal set
+      A thirty-two bit entity which is used to represent a task's collection of
+      pending signals and the signals sent to a task.
+
+   SMCB
+      An acronym for Semaphore Control Block.
+
+   SMP locks
+      The SMP locks ensure mutual exclusion on the lowest level and are a
+      replacement for the sections of disabled interrupts.  Interrupts are
+      usually disabled while holding an SMP lock.  They are implemented using
+      atomic operations.  Currently a ticket lock is used in RTEMS.
+
+   SMP barriers
+      The SMP barriers ensure that a defined set of independent threads of
+      execution on a set of processors reaches a common synchronization point
+      in time.  They are implemented using atomic operations.  Currently a
+      sense barrier is used in RTEMS.
+
+   soft real-time system
+      A real-time system in which a missed deadline does not compromise the
+      integrity of the system.
+
+   sporadic task
+      A task which executes at irregular intervals and must comply with a hard
+      deadline.  A minimum period of time between successive iterations of the
+      task can be guaranteed.
+
+   stack
+      A data structure that is managed using a Last In First Out (LIFO)
+      discipline.  Each task has a stack associated with it which is used to
+      store return information and local variables.
+
+   status code
+      Also known as error code or return value.
+
+   suspend
+      A term used to describe a task that is not competing for the CPU because it
+      has had a ``rtems_task_suspend`` directive.
+
+   synchronous
+      Related in order or timing to other occurrences in the system.
+
+   system call
+      In this document, this is used as an alternate term for directive.
+
+   target
+      The system on which the application will ultimately execute.
+
+   task
+   thread
+      A logically complete thread of execution.  It consists normally of a set
+      of registers and a stack.  The scheduler assigns processors to a subset
+      of the ready tasks.  The terms task and thread are synonym in RTEMS.  The
+      term task is used throughout the Classic API, however, internally in the
+      operating system implementation and the POSIX API the term thread is
+      used.
+
+   Task Control Block
+      A data structure associated with each task used by RTEMS to manage that
+      task.
+
+   task migration
+      Task migration happens in case a task stops execution on one processor
+      and resumes execution on another processor.
+
+   task processor affinity
+      The set of processors on which a task is allowed to execute.
+
+   task switch
+      Alternate terminology for context switch.  Taking control of the
+      processor from one task and given to another.
+
+   TCB
+      An acronym for Task Control Block.
+
+   thread dispatch
+      The thread dispatch transfers control of the processor from the currently
+      executing thread to the heir thread of the processor.
+
+   tick
+      The basic unit of time used by RTEMS.  It is a user-configurable number
+      of microseconds.  The current tick expires when a clock tick directive is
+      invoked.
+
+   tightly-coupled
+      A multiprocessor configuration system which communicates via shared
+      memory.
+
+   timeout
+      An argument provided to a number of directives which determines the
+      maximum length of time an application task is willing to wait to acquire
+      the resource if it is not immediately available.
+
+   timer
+      An RTEMS object used to invoke subprograms at a later time.
+
+   Timer Control Block
+      A data structure associated with each timer used by RTEMS to manage that
+      timer.
+
+   timeslicing
+      A task scheduling discipline in which tasks of equal priority are
+      executed for a specific period of time before being preempted by another
+      task.
+
+   timeslice
+      The application defined unit of time in which the processor is allocated.
+
+   TLS
+      An acronym for Thread-Local Storage :cite:`Drepper:2013:TLS`.  TLS is
+      available in :term:`C11` and :term:`C++11`.  The support for TLS depends
+      on the CPU port :cite:`RTEMS:CPU`.
+
+   TMCB
+      An acronym for Timer Control Block.
+
+   transient overload
+      A temporary rise in system activity which may cause deadlines to be
+      missed.  Rate Monotonic Scheduling can be used to determine if all
+      deadlines will be met under transient overload.
+
+   user extensions
+      Software routines provided by the application to enhance the
+      functionality of RTEMS.
+
+   User Extension Table
+      A table which contains the entry points for each user extensions.
+
+   User Initialization Tasks Table
+      A table which contains the information needed to create and start each of
+      the user initialization tasks.
 
-:dfn:`partition`
-    Clusters with a cardinality of one are :dfn:`partitions`.
-
-:dfn:`Partition Control Block`
-    A data structure associated with each partition used by RTEMS to manage
-    that partition.
-
-:dfn:`pending`
-    A term used to describe a task blocked waiting for an event, message,
-    semaphore, or signal.
-
-:dfn:`periodic task`
-    A task which must execute at regular intervals and comply with a hard
-    deadline.
-
-:dfn:`physical address`
-    The actual hardware address of a resource.
-
-:dfn:`poll`
-    A mechanism used to determine if an event has occurred by periodically
-    checking for a particular status.  Typical events include arrival of data,
-    completion of an action, and errors.
-
-:dfn:`pool`
-    A collection from which resources are allocated.
-
-:dfn:`portability`
-    A term used to describe the ease with which software can be rehosted on
-    another computer.
-
-:dfn:`posting`
-    The act of sending an event, message, semaphore, or signal to a task.
-
-:dfn:`preempt`
-    The act of forcing a task to relinquish the processor and dispatching to
-    another task.
-
-:dfn:`priority`
-    A mechanism used to represent the relative importance of an element in a
-    set of items.  RTEMS uses priority to determine which task should execute.
-
-:dfn:`priority boosting`
-    A simple approach to extend the priority inheritance protocol for clustered
-    scheduling is :dfn:`priority boosting`.  In case a mutex is owned by a task
-    of another cluster, then the priority of the owner task is raised to an
-    artificially high priority, the pseudo-interrupt priority.
-
-:dfn:`priority inheritance`
-    An algorithm that calls for the lower priority task holding a resource to
-    have its priority increased to that of the highest priority task blocked
-    waiting for that resource.  This avoids the problem of priority inversion.
-
-:dfn:`priority inversion`
-    A form of indefinite postponement which occurs when a high priority tasks
-    requests access to shared resource currently allocated to low priority
-    task.  The high priority task must block until the low priority task
-    releases the resource.
-
-:dfn:`processor utilization`
-    The percentage of processor time used by a task or a set of tasks.
-
-:dfn:`proxy`
-    An RTEMS control structure used to represent, on a remote node, a task
-    which must block as part of a remote operation.
-
-:dfn:`Proxy Control Block`
-    A data structure associated with each proxy used by RTEMS to manage that
-    proxy.
-
-:dfn:`PTCB`
-    An acronym for Partition Control Block.
-
-:dfn:`PXCB`
-    An acronym for Proxy Control Block.
-
-:dfn:`quantum`
-    The application defined unit of time in which the processor is allocated.
-
-:dfn:`queue`
-    Alternate term for message queue.
-
-:dfn:`QCB`
-    An acronym for Message Queue Control Block.
-
-:dfn:`ready task`
-    A task occupies this state when it is available to be given control of a
-    processor.  A ready task has no processor assigned.  The scheduler decided
-    that other tasks are currently more important.  A task that is ready to
-    execute and has a processor assigned is called scheduled.
-
-:dfn:`real-time`
-    A term used to describe systems which are characterized by requiring
-    deterministic response times to external stimuli.  The external stimuli
-    require that the response occur at a precise time or the response is
-    incorrect.
-
-:dfn:`reentrant`
-    A term used to describe routines which do not modify themselves or global
-    variables.
-
-:dfn:`region`
-    An RTEMS object which is used to allocate and deallocate variable size
-    blocks of memory from a dynamically specified area of memory.
-
-:dfn:`Region Control Block`
-    A data structure associated with each region used by RTEMS to manage that
-    region.
-
-:dfn:`registers`
-    Registers are locations physically located within a component, typically
-    used for device control or general purpose storage.
-
-:dfn:`remote`
-    Any object that does not reside on the local node.
-
-:dfn:`remote operation`
-    The manipulation of an object which does not reside on the same node as the
-    calling task.
-
-:dfn:`return code`
-    Also known as error code or return value.
-
-:dfn:`resource`
-    A hardware or software entity to which access must be controlled.
-
-:dfn:`resume`
-    Removing a task from the suspend state.  If the task's state is ready
-    following a call to the ``rtems_task_resume`` directive, then the task is
-    available for scheduling.
-
-:dfn:`return code`
-    A value returned by RTEMS directives to indicate the completion status of
-    the directive.
-
-:dfn:`RNCB`
-    An acronym for Region Control Block.
-
-:dfn:`round-robin`
-    A task scheduling discipline in which tasks of equal priority are executed
-    in the order in which they are made ready.
-
-:dfn:`RS-232`
-    A standard for serial communications.
-
-:dfn:`running`
-    The state of a rate monotonic timer while it is being used to delineate a
-    period.  The timer exits this state by either expiring or being canceled.
-
-:dfn:`schedulable`
-    A set of tasks which can be guaranteed to meet their deadlines based upon a
-    specific scheduling algorithm.
-
-:dfn:`schedule`
-    The process of choosing which task should next enter the executing state.
-
-:dfn:`scheduled task`
-    A task is :dfn:`scheduled` if it is allowed to execute and has a processor
-    assigned.  Such a task executes currently on a processor or is about to
-    start execution.  A task about to start execution it is an heir task on
-    exactly one processor in the system.
-
-:dfn:`scheduler`
-    A :dfn:`scheduler` or :dfn:`scheduling algorithm` allocates processors to a
-    subset of its set of ready tasks.  So it manages access to the processor
-    resource.  Various algorithms exist to choose the tasks allowed to use a
-    processor out of the set of ready tasks.  One method is to assign each task
-    a priority number and assign the tasks with the lowest priority number to
-    one processor of the set of processors owned by a scheduler instance.
-
-:dfn:`scheduler instance`
-    A :dfn:`scheduler instance` is a scheduling algorithm with a corresponding
-    context to store its internal state.  Each processor in the system is owned
-    by at most one scheduler instance.  The processor to scheduler instance
-    assignment is determined at application configuration time.  See
-    :ref:`Configuring a System`.
-
-:dfn:`segments`
-    Variable sized memory blocks allocated from a region.
-
-:dfn:`semaphore`
-    An RTEMS object which is used to synchronize tasks and provide mutually
-    exclusive access to resources.
-
-:dfn:`Semaphore Control Block`
-    A data structure associated with each semaphore used by RTEMS to manage
-    that semaphore.
-
-:dfn:`shared memory`
-    Memory which is accessible by multiple nodes in a multiprocessor system.
-
-:dfn:`signal`
-    An RTEMS provided mechanism to communicate asynchronously with a task.
-    Upon reception of a signal, the ASR of the receiving task will be invoked.
-
-:dfn:`signal set`
-    A thirty-two bit entity which is used to represent a task's collection of
-    pending signals and the signals sent to a task.
-
-:dfn:`SMCB`
-    An acronym for Semaphore Control Block.
-
-:dfn:`SMP locks`
-    The :dfn:`SMP locks` ensure mutual exclusion on the lowest level and are a
-    replacement for the sections of disabled interrupts.  Interrupts are
-    usually disabled while holding an SMP lock.  They are implemented using
-    atomic operations.  Currently a ticket lock is used in RTEMS.
-
-:dfn:`SMP barriers`
-    The :dfn:`SMP barriers` ensure that a defined set of independent threads of
-    execution on a set of processors reaches a common synchronization point in
-    time.  They are implemented using atomic operations.  Currently a sense
-    barrier is used in RTEMS.
-
-:dfn:`soft real-time system`
-    A real-time system in which a missed deadline does not compromise the
-    integrity of the system.
-
-:dfn:`sporadic task`
-    A task which executes at irregular intervals and must comply with a hard
-    deadline.  A minimum period of time between successive iterations of the
-    task can be guaranteed.
-
-:dfn:`stack`
-    A data structure that is managed using a Last In First Out (LIFO)
-    discipline.  Each task has a stack associated with it which is used to
-    store return information and local variables.
-
-:dfn:`status code`
-    Also known as error code or return value.
-
-:dfn:`suspend`
-    A term used to describe a task that is not competing for the CPU because it
-    has had a ``rtems_task_suspend`` directive.
-
-:dfn:`synchronous`
-    Related in order or timing to other occurrences in the system.
-
-:dfn:`system call`
-    In this document, this is used as an alternate term for directive.
-
-:dfn:`target`
-    The system on which the application will ultimately execute.
-
-.. _task:
-
-:dfn:`task`
-    A logically complete thread of execution.  It consists normally of a set of
-    registers and a stack.  The scheduler assigns processors to a subset of the
-    ready tasks.  The terms :dfn:`task` and :dfn:`thread` are synonym in RTEMS.
-    The term :dfn:`task` is used throughout the Classic API, however,
-    internally in the operating system implementation and the POSIX API the
-    term :dfn:`thread` is used.
-
-:dfn:`Task Control Block`
-    A data structure associated with each task used by RTEMS to manage that
-    task.
-
-:dfn:`task migration`
-    :dfn:`Task migration` happens in case a task stops execution on one
-    processor and resumes execution on another processor.
-
-:dfn:`task processor affinity`
-    The set of processors on which a task is allowed to execute.
-
-:dfn:`task switch`
-    Alternate terminology for context switch.  Taking control of the processor
-    from one task and given to another.
-
-:dfn:`TCB`
-    An acronym for Task Control Block.
-
-:dfn:`thread`
-    See :ref:`task <task>`.
-
-:dfn:`thread dispatch`
-    The :dfn:`thread dispatch` transfers control of the processor from the
-    currently executing thread to the heir thread of the processor.
-
-:dfn:`tick`
-    The basic unit of time used by RTEMS.  It is a user-configurable number of
-    microseconds.  The current tick expires when a clock tick directive is
-    invoked.
-
-:dfn:`tightly-coupled`
-    A multiprocessor configuration system which communicates via shared memory.
-
-:dfn:`timeout`
-    An argument provided to a number of directives which determines the maximum
-    length of time an application task is willing to wait to acquire the
-    resource if it is not immediately available.
-
-:dfn:`timer`
-    An RTEMS object used to invoke subprograms at a later time.
-
-:dfn:`Timer Control Block`
-    A data structure associated with each timer used by RTEMS to manage that
-    timer.
-
-:dfn:`timeslicing`
-    A task scheduling discipline in which tasks of equal priority are executed
-    for a specific period of time before being preempted by another task.
-
-:dfn:`timeslice`
-    The application defined unit of time in which the processor is allocated.
-
-.. _TLS:
-
-:dfn:`TLS`
-    An acronym for Thread-Local Storage :cite:`Drepper:2013:TLS`.  TLS is
-    available in :ref:`C11 <C11>` and :ref:`C++11 <C++11>`.  The support for
-    TLS depends on the CPU port :cite:`RTEMS:CPU`.
-
-:dfn:`TMCB`
-    An acronym for Timer Control Block.
-
-:dfn:`transient overload`
-    A temporary rise in system activity which may cause deadlines to be missed.
-    Rate Monotonic Scheduling can be used to determine if all deadlines will be
-    met under transient overload.
-
-:dfn:`user extensions`
-    Software routines provided by the application to enhance the functionality
-    of RTEMS.
-
-:dfn:`User Extension Table`
-    A table which contains the entry points for each user extensions.
-
-:dfn:`User Initialization Tasks Table`
-    A table which contains the information needed to create and start each of
-    the user initialization tasks.
-
-:dfn:`user-provided`
-    Alternate term for user-supplied.  This term is used to designate any
-    software routines which must be written by the application designer.
-
-:dfn:`user-supplied`
-    Alternate term for user-provided.  This term is used to designate any
-    software routines which must be written by the application designer.
-
-:dfn:`vector`
-    Memory pointers used by the processor to fetch the address of routines
-    which will handle various exceptions and interrupts.
-
-:dfn:`wait queue`
-    The list of tasks blocked pending the release of a particular resource.
-    Message queues, regions, and semaphores have a wait queue associated with
-    them.
-
-:dfn:`yield`
-    When a task voluntarily releases control of the processor.
+   user-provided
+   user-supplied
+      These terms are used to designate any software routines which must be
+      written by the application designer.
+
+   vector
+      Memory pointers used by the processor to fetch the address of routines
+      which will handle various exceptions and interrupts.
+
+   wait queue
+      The list of tasks blocked pending the release of a particular resource.
+      Message queues, regions, and semaphores have a wait queue associated with
+      them.
+
+   yield
+      When a task voluntarily releases control of the processor.
diff --git a/c-user/key_concepts.rst b/c-user/key_concepts.rst
index 6af8067..cd41c7f 100644
--- a/c-user/key_concepts.rst
+++ b/c-user/key_concepts.rst
@@ -359,12 +359,12 @@ Thread Queues
 =============
 .. index:: thread queues
 
-In case more than one :ref:`thread <task>` may wait on a synchronization
-object, e.g. a semaphore or a message queue, then the waiting threads are added
-to a data structure called the thread queue.  Thread queues are named task wait
-queues in the Classic API.  There are two thread queuing disciplines available
-which define the order of the threads on a particular thread queue.  Threads
-can wait in FIFO or priority order.
+In case more than one :term:`thread` may wait on a synchronization object, e.g.
+a semaphore or a message queue, then the waiting threads are added to a data
+structure called the thread queue.  Thread queues are named task wait queues in
+the Classic API.  There are two thread queuing disciplines available which
+define the order of the threads on a particular thread queue.  Threads can wait
+in FIFO or priority order.
 
 In uni-processor configurations, the priority queuing discipline just orders
 the threads according to their current priority and in FIFO order in case of



More information about the vc mailing list