c-user: Link task entry and global construction

This commit is contained in:
Sebastian Huber 2023-07-25 07:36:09 +02:00
parent 929d0a9d41
commit 6692946100
6 changed files with 29 additions and 7 deletions

View File

@ -401,7 +401,7 @@ initialization task is configured.
.. rubric:: NOTES:
The application shall define exactly one of the following configuration
The application shall define at least one of the following configuration
options
* ``CONFIGURE_RTEMS_INIT_TASKS_TABLE``,
@ -411,3 +411,6 @@ options
* :ref:`CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION`
otherwise a compile time error in the configuration file will occur.
The Classic API initialization task performs the
:ref:`GlobalConstruction`.

View File

@ -123,7 +123,7 @@ If this configuration option is defined, then it is mandatory to configure a
user IDLE task with the :ref:`CONFIGURE_IDLE_TASK_BODY` configuration option,
otherwise a compile time error in the configuration file will occur.
The application shall define exactly one of the following configuration
The application shall define at least one of the following configuration
options
* :ref:`CONFIGURE_RTEMS_INIT_TASKS_TABLE`,
@ -134,6 +134,9 @@ options
otherwise a compile time error in the configuration file will occur.
If no Classic API initialization task and no POSIX API initialization thread
is configured, then no :ref:`GlobalConstruction` is performed.
.. Generated from spec:/acfg/if/idle-task-stack-size
.. raw:: latex

View File

@ -141,7 +141,7 @@ initialization thread is configured.
.. rubric:: NOTES:
The application shall define exactly one of the following configuration
The application shall define at least one of the following configuration
options
* :ref:`CONFIGURE_RTEMS_INIT_TASKS_TABLE`,
@ -151,3 +151,6 @@ options
* :ref:`CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION`
otherwise a compile time error in the configuration file will occur.
If no Classic API initialization task is configured, then the POSIX API
initialization thread performs the :ref:`GlobalConstruction`.

View File

@ -375,6 +375,10 @@ Glossary
An object that has been created with the GLOBAL attribute and exported to
all nodes in a multiprocessor system.
global construction
In the global construction, the C++ global constructors and constructor
functions are invoked. See :ref:`GlobalConstruction`.
GNAT
*GNAT* is the :term:`GNU` compiler for Ada, integrated into the
:term:`GCC`.
@ -1079,6 +1083,15 @@ Glossary
A data structure associated with each task used by RTEMS to manage that
task.
task entry
The task entry is invoked to execute the task's job. Before the task entry
is invoked, the thread begin :term:`user extensions` run in the context of
the task. After the return of the task entry, the thread exitted user
extensions run in the context of the task. The first user initialization
task performs the :term:`global construction` after running the thread begin
extensions and before the task entry is invoked. See also
:ref:`InterfaceRtemsTaskStart`.
task migration
Task migration happens in case a task stops execution on one processor
and resumes execution on another processor.

View File

@ -1523,7 +1523,7 @@ extension set.
rtems_task_entry
----------------
This type defines the entry point of an RTEMS task.
This type defines the :term:`task entry` point of an RTEMS task.
.. Generated from spec:/rtems/userext/if/task-exitted

View File

@ -624,9 +624,9 @@ Starts the task.
.. rubric:: DESCRIPTION:
This directive readies the task, specified by ``id``, for execution based on
the priority and execution mode specified when the task was created. The entry
point of the task is given in ``entry_point``. The task's entry point argument
is contained in ``argument``.
the priority and execution mode specified when the task was created. The
:term:`task entry` point of the task is given in ``entry_point``. The task's
entry point argument is contained in ``argument``.
.. rubric:: RETURN VALUES: