mirror of
https://git.rtems.org/rtems-docs/
synced 2025-07-24 02:42:08 +08:00
parent
29222e3cf7
commit
1d073c5385
@ -1647,6 +1647,39 @@ NOTES:
|
|||||||
you run out of all available memory rather then just until you run out of
|
you run out of all available memory rather then just until you run out of
|
||||||
RTEMS Workspace.
|
RTEMS Workspace.
|
||||||
|
|
||||||
|
.. COMMENT: === CONFIGURE_MAXIMUM_PROCESSORS ===
|
||||||
|
|
||||||
|
.. _CONFIGURE_MAXIMUM_PROCESSORS:
|
||||||
|
|
||||||
|
Specify Maximum Processors
|
||||||
|
----------------------------------------
|
||||||
|
.. index:: CONFIGURE_MAXIMUM_PROCESSORS
|
||||||
|
|
||||||
|
CONSTANT:
|
||||||
|
``CONFIGURE_MAXIMUM_PROCESSORS``
|
||||||
|
|
||||||
|
DATA TYPE:
|
||||||
|
Unsigned integer (``uint32_t``).
|
||||||
|
|
||||||
|
RANGE:
|
||||||
|
Positive.
|
||||||
|
|
||||||
|
DEFAULT VALUE:
|
||||||
|
The default value is 1.
|
||||||
|
|
||||||
|
DESCRIPTION:
|
||||||
|
``CONFIGURE_MAXIMUM_PROCESSORS`` must be set to the maximum number of
|
||||||
|
processors an applicaiton intends to use. The number of acually available
|
||||||
|
processors depends on the hardware and may be less. It is recommended to
|
||||||
|
use the smallest value suitable for the application in order to save
|
||||||
|
memory. Each processor needs an idle thread and interrupt stack for
|
||||||
|
example.
|
||||||
|
|
||||||
|
NOTES:
|
||||||
|
If there are more processors available than configured, the rest will be
|
||||||
|
ignored. This configuration define is ignored in uni-processor
|
||||||
|
configurations.
|
||||||
|
|
||||||
.. COMMENT: === CONFIGURE_MICROSECONDS_PER_TICK ===
|
.. COMMENT: === CONFIGURE_MICROSECONDS_PER_TICK ===
|
||||||
|
|
||||||
.. _CONFIGURE_MICROSECONDS_PER_TICK:
|
.. _CONFIGURE_MICROSECONDS_PER_TICK:
|
||||||
@ -3830,7 +3863,7 @@ NOTES:
|
|||||||
enabled.
|
enabled.
|
||||||
|
|
||||||
This scheduler is currently the default in SMP configurations and is only
|
This scheduler is currently the default in SMP configurations and is only
|
||||||
selected when ``CONFIGURE_SMP_MAXIMUM_PROCESSORS`` is greater than one.
|
selected when ``CONFIGURE_MAXIMUM_PROCESSORS`` is greater than one.
|
||||||
|
|
||||||
.. COMMENT: === CONFIGURE_SCHEDULER_SIMPLE_SMP ===
|
.. COMMENT: === CONFIGURE_SCHEDULER_SIMPLE_SMP ===
|
||||||
|
|
||||||
@ -4020,7 +4053,7 @@ CONFIGURATION:
|
|||||||
The last step is to define which processor uses which scheduler. For this
|
The last step is to define which processor uses which scheduler. For this
|
||||||
purpose a scheduler assignment table must be defined. The entry count of
|
purpose a scheduler assignment table must be defined. The entry count of
|
||||||
this table must be equal to the configured maximum processors
|
this table must be equal to the configured maximum processors
|
||||||
(``CONFIGURE_SMP_MAXIMUM_PROCESSORS``). A processor assignment to a
|
(``CONFIGURE_MAXIMUM_PROCESSORS``). A processor assignment to a
|
||||||
scheduler can be optional or mandatory. The boot processor must have a
|
scheduler can be optional or mandatory. The boot processor must have a
|
||||||
scheduler assigned. In case the system needs more mandatory processors
|
scheduler assigned. In case the system needs more mandatory processors
|
||||||
than available then a fatal run-time error will occur. To specify the
|
than available then a fatal run-time error will occur. To specify the
|
||||||
@ -4091,7 +4124,7 @@ EXAMPLE:
|
|||||||
|
|
||||||
.. code-block:: c
|
.. code-block:: c
|
||||||
|
|
||||||
#define CONFIGURE_SMP_MAXIMUM_PROCESSORS 8
|
#define CONFIGURE_MAXIMUM_PROCESSORS 8
|
||||||
#define CONFIGURE_MAXIMUM_PRIORITY 255
|
#define CONFIGURE_MAXIMUM_PRIORITY 255
|
||||||
|
|
||||||
/* Make the scheduler algorithm available */
|
/* Make the scheduler algorithm available */
|
||||||
@ -4124,43 +4157,6 @@ EXAMPLE:
|
|||||||
RTEMS_SCHEDULER_ASSIGN(1, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL), \
|
RTEMS_SCHEDULER_ASSIGN(1, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL), \
|
||||||
RTEMS_SCHEDULER_ASSIGN(1, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL)
|
RTEMS_SCHEDULER_ASSIGN(1, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL)
|
||||||
|
|
||||||
.. COMMENT: === SMP Specific Configuration Parameters ===
|
|
||||||
|
|
||||||
SMP Specific Configuration Parameters
|
|
||||||
=====================================
|
|
||||||
|
|
||||||
When RTEMS is configured to support SMP target systems, there are other
|
|
||||||
configuration parameters which apply.
|
|
||||||
|
|
||||||
.. COMMENT: === CONFIGURE_SMP_MAXIMUM_PROCESSORS ===
|
|
||||||
|
|
||||||
.. _CONFIGURE_SMP_MAXIMUM_PROCESSORS:
|
|
||||||
|
|
||||||
Specify Maximum Processors in SMP System
|
|
||||||
----------------------------------------
|
|
||||||
.. index:: CONFIGURE_SMP_MAXIMUM_PROCESSORS
|
|
||||||
|
|
||||||
CONSTANT:
|
|
||||||
``CONFIGURE_SMP_MAXIMUM_PROCESSORS``
|
|
||||||
|
|
||||||
DATA TYPE:
|
|
||||||
Unsigned integer (``uint32_t``).
|
|
||||||
|
|
||||||
RANGE:
|
|
||||||
Defined or undefined.
|
|
||||||
|
|
||||||
DEFAULT VALUE:
|
|
||||||
The default value is 1.
|
|
||||||
|
|
||||||
DESCRIPTION:
|
|
||||||
``CONFIGURE_SMP_MAXIMUM_PROCESSORS`` must be set to the number of
|
|
||||||
processors in the SMP configuration.
|
|
||||||
|
|
||||||
NOTES:
|
|
||||||
If there are more processors available than configured, the rest will be
|
|
||||||
ignored. This configuration define is ignored on uni-processor
|
|
||||||
configurations.
|
|
||||||
|
|
||||||
.. COMMENT: === Device Driver Table ===
|
.. COMMENT: === Device Driver Table ===
|
||||||
|
|
||||||
Device Driver Table
|
Device Driver Table
|
||||||
|
@ -883,7 +883,7 @@ EXAMPLE:
|
|||||||
#define CONFIGURE_MAXIMUM_TASKS 1
|
#define CONFIGURE_MAXIMUM_TASKS 1
|
||||||
#define CONFIGURE_MAXIMUM_SEMAPHORES 1
|
#define CONFIGURE_MAXIMUM_SEMAPHORES 1
|
||||||
#define CONFIGURE_MAXIMUM_MRSP_SEMAPHORES 1
|
#define CONFIGURE_MAXIMUM_MRSP_SEMAPHORES 1
|
||||||
#define CONFIGURE_SMP_MAXIMUM_PROCESSORS 2
|
#define CONFIGURE_MAXIMUM_PROCESSORS 2
|
||||||
#define CONFIGURE_SCHEDULER_SIMPLE_SMP
|
#define CONFIGURE_SCHEDULER_SIMPLE_SMP
|
||||||
|
|
||||||
#include <rtems/scheduler.h>
|
#include <rtems/scheduler.h>
|
||||||
|
@ -45,9 +45,9 @@ Application Configuration
|
|||||||
|
|
||||||
By default, the maximum processor count is set to one in the application
|
By default, the maximum processor count is set to one in the application
|
||||||
configuration. To enable SMP, the application configuration option
|
configuration. To enable SMP, the application configuration option
|
||||||
:ref:`CONFIGURE_SMP_MAXIMUM_PROCESSORS <CONFIGURE_SMP_MAXIMUM_PROCESSORS>` must
|
:ref:`CONFIGURE_MAXIMUM_PROCESSORS <CONFIGURE_MAXIMUM_PROCESSORS>` must be
|
||||||
be defined to a value greater than one. It is recommended to use the smallest
|
defined to a value greater than one. It is recommended to use the smallest
|
||||||
value suitable for the application in order to safe memory. Each processor
|
value suitable for the application in order to save memory. Each processor
|
||||||
needs an idle thread and interrupt stack for example.
|
needs an idle thread and interrupt stack for example.
|
||||||
|
|
||||||
The default scheduler for SMP applications supports up to 32 processors and is
|
The default scheduler for SMP applications supports up to 32 processors and is
|
||||||
|
Loading…
x
Reference in New Issue
Block a user