diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2020-03-09 08:46:12 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2020-03-12 10:15:37 +0100 |
commit | bf995cf8d93d384926d1084378d6e0ca4b77f8f8 (patch) | |
tree | 5b91b41eddabdc7f5fb450799596238b769878d3 /c-user/config/classic-api.rst | |
parent | c-user: Move "General System Configuration" (diff) | |
download | rtems-docs-bf995cf8d93d384926d1084378d6e0ca4b77f8f8.tar.bz2 |
c-user: Move "Classic API Configuration"
Update #3836.
Diffstat (limited to 'c-user/config/classic-api.rst')
-rw-r--r-- | c-user/config/classic-api.rst | 291 |
1 files changed, 291 insertions, 0 deletions
diff --git a/c-user/config/classic-api.rst b/c-user/config/classic-api.rst new file mode 100644 index 0000000..6c8f6ca --- /dev/null +++ b/c-user/config/classic-api.rst @@ -0,0 +1,291 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR) + +Classic API Configuration +========================= + +This section defines the Classic API related system configuration parameters +supported by ``<rtems/confdefs.h>``. + +.. index:: CONFIGURE_MAXIMUM_BARRIERS + +.. _CONFIGURE_MAXIMUM_BARRIERS: + +CONFIGURE_MAXIMUM_BARRIERS +-------------------------- + +CONSTANT: + ``CONFIGURE_MAXIMUM_BARRIERS`` + +DATA TYPE: + Unsigned integer (``uint32_t``). + +RANGE: + Zero or positive. + +DEFAULT VALUE: + The default value is 0. + +DESCRIPTION: + ``CONFIGURE_MAXIMUM_BARRIERS`` is the maximum number of Classic API + Barriers that can be concurrently active. + +NOTES: + This object class can be configured in unlimited allocation mode. + +.. index:: CONFIGURE_MAXIMUM_MESSAGE_QUEUES + +.. _CONFIGURE_MAXIMUM_MESSAGE_QUEUES: + +CONFIGURE_MAXIMUM_MESSAGE_QUEUES +-------------------------------- + +CONSTANT: + ``CONFIGURE_MAXIMUM_MESSAGE_QUEUES`` + +DATA TYPE: + Unsigned integer (``uint32_t``). + +RANGE: + Zero or positive. + +DEFAULT VALUE: + The default value is 0. + +DESCRIPTION: + ``CONFIGURE_MAXIMUM_MESSAGE_QUEUES`` is the maximum number of Classic API + Message Queues that can be concurrently active. + +NOTES: + This object class can be configured in unlimited allocation mode. You have + to account for the memory used to store the messages of each message queue, + see :ref:`CONFIGURE_MESSAGE_BUFFER_MEMORY`. + +.. index:: CONFIGURE_MAXIMUM_PARTITIONS + +.. _CONFIGURE_MAXIMUM_PARTITIONS: + +CONFIGURE_MAXIMUM_PARTITIONS +---------------------------- + +CONSTANT: + ``CONFIGURE_MAXIMUM_PARTITIONS`` + +DATA TYPE: + Unsigned integer (``uint32_t``). + +RANGE: + Zero or positive. + +DEFAULT VALUE: + The default value is 0. + +DESCRIPTION: + ``CONFIGURE_MAXIMUM_PARTITIONS`` is the maximum number of Classic API + Partitions that can be concurrently active. + +NOTES: + This object class can be configured in unlimited allocation mode. + +.. index:: CONFIGURE_MAXIMUM_PERIODS + +.. _CONFIGURE_MAXIMUM_PERIODS: + +CONFIGURE_MAXIMUM_PERIODS +------------------------- + +CONSTANT: + ``CONFIGURE_MAXIMUM_PERIODS`` + +DATA TYPE: + Unsigned integer (``uint32_t``). + +RANGE: + Zero or positive. + +DEFAULT VALUE: + The default value is 0. + +DESCRIPTION: + ``CONFIGURE_MAXIMUM_PERIODS`` is the maximum number of Classic API Periods + that can be concurrently active. + +NOTES: + This object class can be configured in unlimited allocation mode. + +.. index:: CONFIGURE_MAXIMUM_PORTS + +.. _CONFIGURE_MAXIMUM_PORTS: + +CONFIGURE_MAXIMUM_PORTS +----------------------- + +CONSTANT: + ``CONFIGURE_MAXIMUM_PORTS`` + +DATA TYPE: + Unsigned integer (``uint32_t``). + +RANGE: + Zero or positive. + +DEFAULT VALUE: + The default value is 0. + +DESCRIPTION: + ``CONFIGURE_MAXIMUM_PORTS`` is the maximum number of Classic API Ports that + can be concurrently active. + +NOTES: + This object class can be configured in unlimited allocation mode. + +.. index:: CONFIGURE_MAXIMUM_REGIONS + +.. _CONFIGURE_MAXIMUM_REGIONS: + +CONFIGURE_MAXIMUM_REGIONS +------------------------- + +CONSTANT: + ``CONFIGURE_MAXIMUM_REGIONS`` + +DATA TYPE: + Unsigned integer (``uint32_t``). + +RANGE: + Zero or positive. + +DEFAULT VALUE: + The default value is 0. + +DESCRIPTION: + ``CONFIGURE_MAXIMUM_REGIONS`` is the maximum number of Classic API Regions + that can be concurrently active. + +NOTES: + None. + +.. index:: CONFIGURE_MAXIMUM_SEMAPHORES + +.. _CONFIGURE_MAXIMUM_SEMAPHORES: + +CONFIGURE_MAXIMUM_SEMAPHORES +---------------------------- + +CONSTANT: + ``CONFIGURE_MAXIMUM_SEMAPHORES`` + +DATA TYPE: + Unsigned integer (``uint32_t``). + +RANGE: + Zero or positive. + +DEFAULT VALUE: + The default value is 0. + +DESCRIPTION: + ``CONFIGURE_MAXIMUM_SEMAPHORES`` is the maximum number of Classic API + Semaphores that can be concurrently active. + +NOTES: + This object class can be configured in unlimited allocation mode. + + In SMP configurations, the size of a Semaphore Control Block depends on the + scheduler count (see :ref:`ConfigurationSchedulerTable`). The semaphores + using the :ref:`MrsP` need a ceiling priority per scheduler. + +.. index:: CONFIGURE_MAXIMUM_TASKS + +.. _CONFIGURE_MAXIMUM_TASKS: + +CONFIGURE_MAXIMUM_TASKS +----------------------- + +CONSTANT: + ``CONFIGURE_MAXIMUM_TASKS`` + +DATA TYPE: + Unsigned integer (``uint32_t``). + +RANGE: + Zero or positive. + +DEFAULT VALUE: + The default value is ``0``. + +DESCRIPTION: + ``CONFIGURE_MAXIMUM_TASKS`` is the maximum number of Classic API Tasks that + can be concurrently active. + +NOTES: + This object class can be configured in unlimited allocation mode. + + The calculations for the required memory in the RTEMS Workspace for tasks + assume that each task has a minimum stack size and has floating point + support enabled. The configuration parameter + ``CONFIGURE_EXTRA_TASK_STACKS`` is used to specify task stack requirements + *ABOVE* the minimum size required. See :ref:`Reserve Task/Thread Stack + Memory Above Minimum` for more information about + ``CONFIGURE_EXTRA_TASK_STACKS``. + + The maximum number of POSIX threads is specified by + :ref:`CONFIGURE_MAXIMUM_POSIX_THREADS <CONFIGURE_MAXIMUM_POSIX_THREADS>`. + + A future enhancement to ``<rtems/confdefs.h>`` could be to eliminate the + assumption that all tasks have floating point enabled. This would require + the addition of a new configuration parameter to specify the number of + tasks which enable floating point support. + +.. index:: CONFIGURE_MAXIMUM_TIMERS + +.. _CONFIGURE_MAXIMUM_TIMERS: + +CONFIGURE_MAXIMUM_TIMERS +------------------------ + +CONSTANT: + ``CONFIGURE_MAXIMUM_TIMERS`` + +DATA TYPE: + Unsigned integer (``uint32_t``). + +RANGE: + Zero or positive. + +DEFAULT VALUE: + The default value is 0. + +DESCRIPTION: + ``CONFIGURE_MAXIMUM_TIMERS`` is the maximum number of Classic API Timers + that can be concurrently active. + +NOTES: + This object class can be configured in unlimited allocation mode. + +.. index:: CONFIGURE_MAXIMUM_USER_EXTENSIONS + +.. _CONFIGURE_MAXIMUM_USER_EXTENSIONS: + +CONFIGURE_MAXIMUM_USER_EXTENSIONS +--------------------------------- + +CONSTANT: + ``CONFIGURE_MAXIMUM_USER_EXTENSIONS`` + +DATA TYPE: + Unsigned integer (``uint32_t``). + +RANGE: + Zero or positive. + +DEFAULT VALUE: + The default value is 0. + +DESCRIPTION: + ``CONFIGURE_MAXIMUM_USER_EXTENSIONS`` is the maximum number of Classic API + User Extensions that can be concurrently active. + +NOTES: + This object class can be configured in unlimited allocation mode. |