mirror of
https://git.rtems.org/rtems-docs/
synced 2025-05-31 02:21:26 +08:00
parent
7bad8940ad
commit
4032c96da9
@ -76,6 +76,33 @@ NOTES:
|
||||
See :ref:`CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS` for an alternative
|
||||
placement of application device driver initializers.
|
||||
|
||||
.. index:: CONFIGURE_APPLICATION_NEEDS_ATA_DRIVER
|
||||
|
||||
.. _CONFIGURE_APPLICATION_NEEDS_ATA_DRIVER:
|
||||
|
||||
CONFIGURE_APPLICATION_NEEDS_ATA_DRIVER
|
||||
--------------------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_APPLICATION_NEEDS_ATA_DRIVER``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is a boolean feature define.
|
||||
|
||||
DEFAULT CONFIGURATION:
|
||||
If this configuration option is undefined, then the described feature is not
|
||||
enabled.
|
||||
|
||||
DESCRIPTION:
|
||||
In case this configuration option is defined, then the ATA Driver is
|
||||
initialized during system initialization.
|
||||
|
||||
NOTES:
|
||||
Most BSPs do not include support for an ATA Driver.
|
||||
|
||||
If this option is defined and the BSP does not have this device driver, then
|
||||
the user will get a link time error for an undefined symbol.
|
||||
|
||||
.. index:: CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
|
||||
|
||||
.. _CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER:
|
||||
@ -178,6 +205,33 @@ NOTES:
|
||||
If this option is defined and the BSP does not have this device driver, then
|
||||
the user will get a link time error for an undefined symbol.
|
||||
|
||||
.. index:: CONFIGURE_APPLICATION_NEEDS_IDE_DRIVER
|
||||
|
||||
.. _CONFIGURE_APPLICATION_NEEDS_IDE_DRIVER:
|
||||
|
||||
CONFIGURE_APPLICATION_NEEDS_IDE_DRIVER
|
||||
--------------------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_APPLICATION_NEEDS_IDE_DRIVER``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is a boolean feature define.
|
||||
|
||||
DEFAULT CONFIGURATION:
|
||||
If this configuration option is undefined, then the described feature is not
|
||||
enabled.
|
||||
|
||||
DESCRIPTION:
|
||||
In case this configuration option is defined, then the IDE Driver is
|
||||
initialized during system initialization.
|
||||
|
||||
NOTES:
|
||||
Most BSPs do not include support for an IDE Driver.
|
||||
|
||||
If this option is defined and the BSP does not have this device driver, then
|
||||
the user will get a link time error for an undefined symbol.
|
||||
|
||||
.. index:: CONFIGURE_APPLICATION_NEEDS_NULL_DRIVER
|
||||
.. index:: /dev/null
|
||||
|
||||
@ -471,6 +525,33 @@ NOTES:
|
||||
See :ref:`CONFIGURE_APPLICATION_EXTRA_DRIVERS` for an alternative placement
|
||||
of application device driver initializers.
|
||||
|
||||
.. index:: CONFIGURE_ATA_DRIVER_TASK_PRIORITY
|
||||
|
||||
.. _CONFIGURE_ATA_DRIVER_TASK_PRIORITY:
|
||||
|
||||
CONFIGURE_ATA_DRIVER_TASK_PRIORITY
|
||||
----------------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_ATA_DRIVER_TASK_PRIORITY``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is an integer define.
|
||||
|
||||
DEFAULT VALUE:
|
||||
The default value is 140.
|
||||
|
||||
VALUE CONSTRAINTS:
|
||||
The value of this configuration option shall be a valid Classic API task
|
||||
priority. The set of valid task priorities is scheduler-specific.
|
||||
|
||||
DESCRIPTION:
|
||||
The value of this configuration option defines the ATA task priority.
|
||||
|
||||
NOTES:
|
||||
This configuration option is only evaluated if the configuration option
|
||||
:ref:`CONFIGURE_APPLICATION_NEEDS_ATA_DRIVER` is defined.
|
||||
|
||||
.. index:: CONFIGURE_MAXIMUM_DRIVERS
|
||||
|
||||
.. _CONFIGURE_MAXIMUM_DRIVERS:
|
||||
|
@ -1,5 +1,6 @@
|
||||
.. SPDX-License-Identifier: CC-BY-SA-4.0
|
||||
|
||||
.. Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
|
||||
.. Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR)
|
||||
|
||||
Filesystem Configuration
|
||||
@ -74,6 +75,223 @@ NOTES:
|
||||
drivers and basic input/output functions such as :c:func:`printf`.
|
||||
Filesystems can be disabled to reduce the memory footprint of an application.
|
||||
|
||||
.. index:: CONFIGURE_FILESYSTEM_ALL
|
||||
|
||||
.. _CONFIGURE_FILESYSTEM_ALL:
|
||||
|
||||
CONFIGURE_FILESYSTEM_ALL
|
||||
------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_FILESYSTEM_ALL``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is a boolean feature define.
|
||||
|
||||
DEFAULT CONFIGURATION:
|
||||
If this configuration option is undefined, then the described feature is not
|
||||
enabled.
|
||||
|
||||
DESCRIPTION:
|
||||
In case this configuration option is defined, then the following
|
||||
configuration options will be defined as well
|
||||
|
||||
- :ref:`CONFIGURE_FILESYSTEM_DOSFS`,
|
||||
|
||||
- :ref:`CONFIGURE_FILESYSTEM_FTPFS`,
|
||||
|
||||
- :ref:`CONFIGURE_FILESYSTEM_IMFS`,
|
||||
|
||||
- :ref:`CONFIGURE_FILESYSTEM_JFFS2`,
|
||||
|
||||
- :ref:`CONFIGURE_FILESYSTEM_NFS`,
|
||||
|
||||
- :ref:`CONFIGURE_FILESYSTEM_RFS`, and
|
||||
|
||||
- :ref:`CONFIGURE_FILESYSTEM_TFTPFS`.
|
||||
|
||||
NOTES:
|
||||
None.
|
||||
|
||||
.. index:: CONFIGURE_FILESYSTEM_DOSFS
|
||||
|
||||
.. _CONFIGURE_FILESYSTEM_DOSFS:
|
||||
|
||||
CONFIGURE_FILESYSTEM_DOSFS
|
||||
--------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_FILESYSTEM_DOSFS``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is a boolean feature define.
|
||||
|
||||
DEFAULT CONFIGURATION:
|
||||
If this configuration option is undefined, then the described feature is not
|
||||
enabled.
|
||||
|
||||
DESCRIPTION:
|
||||
In case this configuration option is defined, then the DOS (FAT) filesystem
|
||||
is registered, so that instances of this filesystem can be mounted by the
|
||||
application.
|
||||
|
||||
NOTES:
|
||||
This filesystem requires a Block Device Cache configuration, see
|
||||
:ref:`CONFIGURE_APPLICATION_NEEDS_LIBBLOCK`.
|
||||
|
||||
.. index:: CONFIGURE_FILESYSTEM_FTPFS
|
||||
|
||||
.. _CONFIGURE_FILESYSTEM_FTPFS:
|
||||
|
||||
CONFIGURE_FILESYSTEM_FTPFS
|
||||
--------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_FILESYSTEM_FTPFS``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is a boolean feature define.
|
||||
|
||||
DEFAULT CONFIGURATION:
|
||||
If this configuration option is undefined, then the described feature is not
|
||||
enabled.
|
||||
|
||||
DESCRIPTION:
|
||||
In case this configuration option is defined, then the FTP filesystem (FTP
|
||||
client) is registered, so that instances of this filesystem
|
||||
can be mounted by the application.
|
||||
|
||||
NOTES:
|
||||
None.
|
||||
|
||||
.. index:: CONFIGURE_FILESYSTEM_IMFS
|
||||
|
||||
.. _CONFIGURE_FILESYSTEM_IMFS:
|
||||
|
||||
CONFIGURE_FILESYSTEM_IMFS
|
||||
-------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_FILESYSTEM_IMFS``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is a boolean feature define.
|
||||
|
||||
DEFAULT CONFIGURATION:
|
||||
If this configuration option is undefined, then the described feature is not
|
||||
enabled.
|
||||
|
||||
DESCRIPTION:
|
||||
In case this configuration option is defined, then the In-Memory Filesystem
|
||||
(IMFS) is registered, so that instances of this filesystem can be mounted by
|
||||
the application.
|
||||
|
||||
NOTES:
|
||||
Applications will rarely need this configuration option. This configuration
|
||||
option is intended for test programs. You do not need to define this
|
||||
configuration option for the base filesystem (also known as root filesystem).
|
||||
|
||||
.. index:: CONFIGURE_FILESYSTEM_JFFS2
|
||||
|
||||
.. _CONFIGURE_FILESYSTEM_JFFS2:
|
||||
|
||||
CONFIGURE_FILESYSTEM_JFFS2
|
||||
--------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_FILESYSTEM_JFFS2``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is a boolean feature define.
|
||||
|
||||
DEFAULT CONFIGURATION:
|
||||
If this configuration option is undefined, then the described feature is not
|
||||
enabled.
|
||||
|
||||
DESCRIPTION:
|
||||
In case this configuration option is defined, then the JFFS2 filesystem
|
||||
is registered, so that instances of this filesystem can be mounted by the
|
||||
application.
|
||||
|
||||
NOTES:
|
||||
None.
|
||||
|
||||
.. index:: CONFIGURE_FILESYSTEM_NFS
|
||||
|
||||
.. _CONFIGURE_FILESYSTEM_NFS:
|
||||
|
||||
CONFIGURE_FILESYSTEM_NFS
|
||||
------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_FILESYSTEM_NFS``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is a boolean feature define.
|
||||
|
||||
DEFAULT CONFIGURATION:
|
||||
If this configuration option is undefined, then the described feature is not
|
||||
enabled.
|
||||
|
||||
DESCRIPTION:
|
||||
In case this configuration option is defined, then the Network Filesystem
|
||||
(NFS) client is registered, so that instances of this filesystem can be
|
||||
mounted by the application.
|
||||
|
||||
NOTES:
|
||||
None.
|
||||
|
||||
.. index:: CONFIGURE_FILESYSTEM_RFS
|
||||
|
||||
.. _CONFIGURE_FILESYSTEM_RFS:
|
||||
|
||||
CONFIGURE_FILESYSTEM_RFS
|
||||
------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_FILESYSTEM_RFS``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is a boolean feature define.
|
||||
|
||||
DEFAULT CONFIGURATION:
|
||||
If this configuration option is undefined, then the described feature is not
|
||||
enabled.
|
||||
|
||||
DESCRIPTION:
|
||||
In case this configuration option is defined, then the RTEMS Filesystem (RFS)
|
||||
is registered, so that instances of this filesystem can be mounted by the
|
||||
application.
|
||||
|
||||
NOTES:
|
||||
This filesystem requires a Block Device Cache configuration, see
|
||||
:ref:`CONFIGURE_APPLICATION_NEEDS_LIBBLOCK`.
|
||||
|
||||
.. index:: CONFIGURE_FILESYSTEM_TFTPFS
|
||||
|
||||
.. _CONFIGURE_FILESYSTEM_TFTPFS:
|
||||
|
||||
CONFIGURE_FILESYSTEM_TFTPFS
|
||||
---------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_FILESYSTEM_TFTPFS``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is a boolean feature define.
|
||||
|
||||
DEFAULT CONFIGURATION:
|
||||
If this configuration option is undefined, then the described feature is not
|
||||
enabled.
|
||||
|
||||
DESCRIPTION:
|
||||
In case this configuration option is defined, then the TFTP filesystem (TFTP
|
||||
client) is registered, so that instances of this filesystem can be mounted by
|
||||
the application.
|
||||
|
||||
NOTES:
|
||||
None.
|
||||
|
||||
.. index:: CONFIGURE_IMFS_DISABLE_CHMOD
|
||||
|
||||
.. _CONFIGURE_IMFS_DISABLE_CHMOD:
|
||||
@ -170,6 +388,30 @@ DESCRIPTION:
|
||||
NOTES:
|
||||
None.
|
||||
|
||||
.. index:: CONFIGURE_IMFS_DISABLE_MKNOD_DEVICE
|
||||
|
||||
.. _CONFIGURE_IMFS_DISABLE_MKNOD_DEVICE:
|
||||
|
||||
CONFIGURE_IMFS_DISABLE_MKNOD_DEVICE
|
||||
-----------------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_IMFS_DISABLE_MKNOD_DEVICE``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is a boolean feature define.
|
||||
|
||||
DEFAULT CONFIGURATION:
|
||||
If this configuration option is undefined, then the root IMFS supports making
|
||||
device files.
|
||||
|
||||
DESCRIPTION:
|
||||
In case this configuration option is defined, then the root IMFS does not
|
||||
support making device files.
|
||||
|
||||
NOTES:
|
||||
None.
|
||||
|
||||
.. index:: CONFIGURE_IMFS_DISABLE_MKNOD_FILE
|
||||
|
||||
.. _CONFIGURE_IMFS_DISABLE_MKNOD_FILE:
|
||||
|
@ -37,6 +37,73 @@ NOTES:
|
||||
:ref:`CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLY` is also defined, then the
|
||||
memory is first dirtied and then zeroed.
|
||||
|
||||
See also :ref:`CONFIGURE_MALLOC_DIRTY`.
|
||||
|
||||
.. index:: CONFIGURE_DISABLE_NEWLIB_REENTRANCY
|
||||
|
||||
.. _CONFIGURE_DISABLE_NEWLIB_REENTRANCY:
|
||||
|
||||
CONFIGURE_DISABLE_NEWLIB_REENTRANCY
|
||||
-----------------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_DISABLE_NEWLIB_REENTRANCY``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is a boolean feature define.
|
||||
|
||||
DEFAULT CONFIGURATION:
|
||||
If this configuration option is undefined, then the described feature is not
|
||||
enabled.
|
||||
|
||||
DESCRIPTION:
|
||||
In case this configuration option is defined, then the Newlib reentrancy
|
||||
support per thread is disabled and a global reentrancy structure is used.
|
||||
|
||||
NOTES:
|
||||
You can enable this option to reduce the size of the :term:`TCB`. Use this
|
||||
option with care, since it can lead to race conditions and undefined system
|
||||
behaviour. For example, :c:data:`errno` is no longer a thread-local variable
|
||||
if this option is enabled.
|
||||
|
||||
.. index:: CONFIGURE_EXECUTIVE_RAM_SIZE
|
||||
|
||||
.. _CONFIGURE_EXECUTIVE_RAM_SIZE:
|
||||
|
||||
CONFIGURE_EXECUTIVE_RAM_SIZE
|
||||
----------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_EXECUTIVE_RAM_SIZE``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is an integer define.
|
||||
|
||||
DEFAULT VALUE:
|
||||
If this configuration option is undefined, then the RTEMS Workspace and task
|
||||
stack space size is calculated by ``<rtems/confdefs.h>`` based on the values
|
||||
configuration options.
|
||||
|
||||
VALUE CONSTRAINTS:
|
||||
The value of this configuration option shall satisfy all of the following
|
||||
constraints:
|
||||
|
||||
* It shall be greater than or equal to 0.
|
||||
|
||||
* It shall be less than or equal to ``UINTPTR_MAX``.
|
||||
|
||||
* It shall be less than or equal to a
|
||||
BSP-specific and application-specific value which depends on the size of the
|
||||
memory available to the application.
|
||||
|
||||
DESCRIPTION:
|
||||
The value of this configuration option defines the RTEMS Workspace size in
|
||||
bytes.
|
||||
|
||||
NOTES:
|
||||
This is an advanced configuration option. Use it only if you know exactly
|
||||
what you are doing.
|
||||
|
||||
.. index:: CONFIGURE_EXTRA_TASK_STACKS
|
||||
.. index:: memory for task tasks
|
||||
|
||||
@ -156,6 +223,34 @@ NOTES:
|
||||
In releases before RTEMS 5.1 the default value was
|
||||
:ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE` instead of ``CPU_STACK_MINIMUM_SIZE``.
|
||||
|
||||
.. index:: CONFIGURE_MALLOC_DIRTY
|
||||
|
||||
.. _CONFIGURE_MALLOC_DIRTY:
|
||||
|
||||
CONFIGURE_MALLOC_DIRTY
|
||||
----------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_MALLOC_DIRTY``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is a boolean feature define.
|
||||
|
||||
DEFAULT CONFIGURATION:
|
||||
If this configuration option is undefined, then the described feature is not
|
||||
enabled.
|
||||
|
||||
DESCRIPTION:
|
||||
In case this configuration option is defined, then each memory area returned
|
||||
by C Program Heap allocator functions such as :c:func:`malloc` is dirtied
|
||||
with a ``0xCF`` byte pattern before it is handed over to the application.
|
||||
|
||||
NOTES:
|
||||
The dirtying performed by this option is carried out for each successful
|
||||
memory allocation from the C Program Heap in contrast to
|
||||
:ref:`CONFIGURE_DIRTY_MEMORY` which dirties the memory only once during the
|
||||
system initialization.
|
||||
|
||||
.. index:: CONFIGURE_MAXIMUM_FILE_DESCRIPTORS
|
||||
.. index:: maximum file descriptors
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
.. SPDX-License-Identifier: CC-BY-SA-4.0
|
||||
|
||||
.. Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
|
||||
.. Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR)
|
||||
|
||||
Multiprocessing Configuration
|
||||
@ -38,6 +39,42 @@ NOTES:
|
||||
This has no impact unless RTEMS was built with the
|
||||
``--enable-multiprocessing`` build configuration option.
|
||||
|
||||
.. index:: CONFIGURE_EXTRA_MPCI_RECEIVE_SERVER_STACK
|
||||
|
||||
.. _CONFIGURE_EXTRA_MPCI_RECEIVE_SERVER_STACK:
|
||||
|
||||
CONFIGURE_EXTRA_MPCI_RECEIVE_SERVER_STACK
|
||||
-----------------------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_EXTRA_MPCI_RECEIVE_SERVER_STACK``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is an integer define.
|
||||
|
||||
DEFAULT VALUE:
|
||||
The default value is 0.
|
||||
|
||||
VALUE CONSTRAINTS:
|
||||
The value of this configuration option shall satisfy all of the following
|
||||
constraints:
|
||||
|
||||
* It shall be greater than or equal to 0.
|
||||
|
||||
* It shall be less than or equal to ``UINT32_MAX``.
|
||||
|
||||
* It shall be small enough so that the
|
||||
MPCI receive server stack area calculation carried out by
|
||||
``<rtems/confdefs.h>`` does not overflow an integer of type ``size_t``.
|
||||
|
||||
DESCRIPTION:
|
||||
The value of this configuration option defines the number of bytes the
|
||||
applications wishes to add to the MPCI task stack on top of
|
||||
:ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`.
|
||||
|
||||
NOTES:
|
||||
None.
|
||||
|
||||
.. index:: CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS
|
||||
|
||||
.. _CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS:
|
||||
|
@ -235,6 +235,51 @@ NOTES:
|
||||
initialized with :c:func:`sem_init()` are not affected by this configuration
|
||||
option since the storage space for these semaphores is user-provided.
|
||||
|
||||
.. index:: CONFIGURE_MAXIMUM_POSIX_SHMS
|
||||
|
||||
.. _CONFIGURE_MAXIMUM_POSIX_SHMS:
|
||||
|
||||
CONFIGURE_MAXIMUM_POSIX_SHMS
|
||||
----------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_MAXIMUM_POSIX_SHMS``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is an integer define.
|
||||
|
||||
DEFAULT VALUE:
|
||||
The default value is 0.
|
||||
|
||||
VALUE CONSTRAINTS:
|
||||
The value of this configuration option shall satisfy all of the following
|
||||
constraints:
|
||||
|
||||
* It shall be greater than or equal to 0.
|
||||
|
||||
* It shall be less than or equal to 65535.
|
||||
|
||||
* It shall be less than or equal to a
|
||||
BSP-specific and application-specific value which depends on the size of the
|
||||
memory available to the application.
|
||||
|
||||
* It shall be small enough so that the
|
||||
RTEMS Workspace size calculation carried out by ``<rtems/confdefs.h>`` does
|
||||
not overflow an integer of type ``uintptr_t``.
|
||||
|
||||
* It may be defined through
|
||||
:c:func:`rtems_resource_unlimited` the enable unlimited objects for this
|
||||
object class, if the value passed to :c:func:`rtems_resource_unlimited`
|
||||
satisfies all other constraints of this configuration option.
|
||||
|
||||
DESCRIPTION:
|
||||
The value of this configuration option defines the maximum number of POSIX
|
||||
API Shared Memory objects that can be concurrently active.
|
||||
|
||||
NOTES:
|
||||
This object class can be configured in unlimited allocation mode, see
|
||||
:ref:`ConfigUnlimitedObjects`.
|
||||
|
||||
.. index:: CONFIGURE_MAXIMUM_POSIX_THREADS
|
||||
|
||||
.. _CONFIGURE_MAXIMUM_POSIX_THREADS:
|
||||
|
@ -1,5 +1,6 @@
|
||||
.. SPDX-License-Identifier: CC-BY-SA-4.0
|
||||
|
||||
.. Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
|
||||
.. Copyright (C) 2010 Gedare Bloom
|
||||
.. Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR)
|
||||
|
||||
@ -28,6 +29,83 @@ The pluggable scheduler interface also enables the user to provide their own
|
||||
scheduling algorithm. If you choose to do this, you must define multiple
|
||||
configuration option.
|
||||
|
||||
.. index:: CONFIGURE_CBS_MAXIMUM_SERVERS
|
||||
|
||||
.. _CONFIGURE_CBS_MAXIMUM_SERVERS:
|
||||
|
||||
CONFIGURE_CBS_MAXIMUM_SERVERS
|
||||
-----------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_CBS_MAXIMUM_SERVERS``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is an integer define.
|
||||
|
||||
DEFAULT VALUE:
|
||||
The default value is :ref:`CONFIGURE_MAXIMUM_TASKS`.
|
||||
|
||||
VALUE CONSTRAINTS:
|
||||
The value of this configuration option shall satisfy all of the following
|
||||
constraints:
|
||||
|
||||
* It shall be greater than or equal to 0.
|
||||
|
||||
* It shall be less than or equal to ``SIZE_MAX``.
|
||||
|
||||
* It shall be less than or equal to a
|
||||
BSP-specific and application-specific value which depends on the size of the
|
||||
memory available to the application.
|
||||
|
||||
DESCRIPTION:
|
||||
The value of this configuration option defines the maximum number Constant
|
||||
Bandwidth Servers that can be concurrently active.
|
||||
|
||||
NOTES:
|
||||
This configuration option is only evaluated if the configuration option
|
||||
:ref:`CONFIGURE_SCHEDULER_CBS` is defined.
|
||||
|
||||
.. index:: CONFIGURE_SCHEDULER_ASSIGNMENTS
|
||||
|
||||
.. _CONFIGURE_SCHEDULER_ASSIGNMENTS:
|
||||
|
||||
CONFIGURE_SCHEDULER_ASSIGNMENTS
|
||||
-------------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_SCHEDULER_ASSIGNMENTS``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is an initializer define.
|
||||
|
||||
DEFAULT VALUE:
|
||||
The default value of this configuration option is computed so that the
|
||||
default scheduler is assigned to each configured processor (up to 32).
|
||||
|
||||
VALUE CONSTRAINTS:
|
||||
The value of this configuration option shall satisfy all of the following
|
||||
constraints:
|
||||
|
||||
* It shall be a list of the following
|
||||
macros:
|
||||
|
||||
* ``RTEMS_SCHEDULER_ASSIGN( processor_index, attributes )``
|
||||
|
||||
* :c:macro:`RTEMS_SCHEDULER_ASSIGN_NO_SCHEDULER`
|
||||
|
||||
* It shall be a list of exactly
|
||||
:ref:`CONFIGURE_MAXIMUM_PROCESSORS` elements.
|
||||
|
||||
DESCRIPTION:
|
||||
The value of this configuration option is used to initialize the initial
|
||||
scheduler to processor assignments.
|
||||
|
||||
NOTES:
|
||||
This configuration option is only evaluated in SMP configurations.
|
||||
|
||||
This is an advanced configuration option, see
|
||||
:ref:`ConfigurationSchedulersClustered`.
|
||||
|
||||
.. index:: CONFIGURE_SCHEDULER_CBS
|
||||
|
||||
.. _CONFIGURE_SCHEDULER_CBS:
|
||||
@ -346,6 +424,36 @@ NOTES:
|
||||
<ConfigurationSchedulersClustered>` is present, then it is used as the
|
||||
scheduler for up to 32 processors.
|
||||
|
||||
.. index:: CONFIGURE_SCHEDULER_STRONG_APA
|
||||
|
||||
.. _CONFIGURE_SCHEDULER_STRONG_APA:
|
||||
|
||||
CONFIGURE_SCHEDULER_STRONG_APA
|
||||
------------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_SCHEDULER_STRONG_APA``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is a boolean feature define.
|
||||
|
||||
DEFAULT CONFIGURATION:
|
||||
If this configuration option is undefined, then the described feature is not
|
||||
enabled.
|
||||
|
||||
DESCRIPTION:
|
||||
In case this configuration option is defined, then Strong APA algorithm is
|
||||
made available to the application.
|
||||
|
||||
NOTES:
|
||||
This scheduler configuration option is an advanced configuration option.
|
||||
Think twice before you use it.
|
||||
|
||||
This scheduler algorithm is only available when RTEMS is built with SMP
|
||||
support enabled.
|
||||
|
||||
This scheduler algorithm is not correctly implemented. Do not use it.
|
||||
|
||||
.. index:: CONFIGURE_SCHEDULER_USER
|
||||
|
||||
.. _CONFIGURE_SCHEDULER_USER:
|
||||
|
@ -1,5 +1,6 @@
|
||||
.. SPDX-License-Identifier: CC-BY-SA-4.0
|
||||
|
||||
.. Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
|
||||
.. Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR)
|
||||
|
||||
Task Stack Allocator Configuration
|
||||
@ -113,3 +114,60 @@ NOTES:
|
||||
- :ref:`CONFIGURE_TASK_STACK_ALLOCATOR`
|
||||
|
||||
- `CONFIGURE_TASK_STACK_DEALLOCATOR`
|
||||
|
||||
.. index:: CONFIGURE_TASK_STACK_FROM_ALLOCATOR
|
||||
.. index:: task stack allocator
|
||||
|
||||
.. _CONFIGURE_TASK_STACK_FROM_ALLOCATOR:
|
||||
|
||||
CONFIGURE_TASK_STACK_FROM_ALLOCATOR
|
||||
-----------------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_TASK_STACK_FROM_ALLOCATOR``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is an initializer define.
|
||||
|
||||
DEFAULT VALUE:
|
||||
The default value is a macro which supports the system heap allocator.
|
||||
|
||||
VALUE CONSTRAINTS:
|
||||
The value of this configuration option shall be defined to a macro which
|
||||
accepts exactly one parameter and returns an unsigned integer. The
|
||||
parameter will be an allocation size and the macro shall return this size
|
||||
plus the overhead of the allocator to manage an allocation request for this
|
||||
size.
|
||||
|
||||
DESCRIPTION:
|
||||
The value of this configuration option is used to calculate the task stack
|
||||
space size.
|
||||
|
||||
NOTES:
|
||||
This configuration option may be used if a custom task stack allocator is
|
||||
configured, see :ref:`CONFIGURE_TASK_STACK_ALLOCATOR`.
|
||||
|
||||
.. index:: CONFIGURE_TASK_STACK_ALLOCATOR_AVOIDS_WORK_SPACE
|
||||
|
||||
.. _CONFIGURE_TASK_STACK_ALLOCATOR_AVOIDS_WORK_SPACE:
|
||||
|
||||
CONFIGURE_TASK_STACK_ALLOCATOR_AVOIDS_WORK_SPACE
|
||||
------------------------------------------------
|
||||
|
||||
CONSTANT:
|
||||
``CONFIGURE_TASK_STACK_ALLOCATOR_AVOIDS_WORK_SPACE``
|
||||
|
||||
OPTION TYPE:
|
||||
This configuration option is a boolean feature define.
|
||||
|
||||
DEFAULT CONFIGURATION:
|
||||
If this configuration option is undefined, then the described feature is not
|
||||
enabled.
|
||||
|
||||
DESCRIPTION:
|
||||
In case this configuration option is defined, then the system is informed
|
||||
that the task stack allocator does not use the RTEMS Workspace.
|
||||
|
||||
NOTES:
|
||||
This configuration option may be used if a custom task stack allocator is
|
||||
configured, see :ref:`CONFIGURE_TASK_STACK_ALLOCATOR`.
|
||||
|
Loading…
x
Reference in New Issue
Block a user