source: rtems-docs/c-user/config/posix-init-thread.rst @ 1af97ad

5
Last change on this file since 1af97ad was 2a761cf, checked in by Sebastian Huber <sebastian.huber@…>, on 03/09/20 at 07:48:51

c-user: Move "POSIX Initialization Thread Configuration"

Update #3836.

  • Property mode set to 100644
File size: 3.0 KB
Line 
1.. SPDX-License-Identifier: CC-BY-SA-4.0
2
3.. Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR)
4
5POSIX Initialization Thread Configuration
6=========================================
7
8The ``<rtems/confdefs.h>`` configuration system can automatically generate a
9POSIX Initialization Threads Table named ``POSIX_Initialization_threads`` with
10a single entry.  The following parameters control the generation of that table.
11
12.. index:: CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT
13
14.. _CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT:
15
16CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT
17---------------------------------------
18
19CONSTANT:
20    ``CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT``
21
22DATA TYPE:
23    POSIX thread function pointer (``void *(*entry_point)(void *)``).
24
25RANGE:
26    Undefined or a valid POSIX thread function pointer.
27
28DEFAULT VALUE:
29    The default value is ``POSIX_Init``.
30
31DESCRIPTION:
32    ``CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT`` is the entry point
33    (a.k.a. function name) of the single initialization thread defined by the
34    POSIX API Initialization Threads Table.
35
36NOTES:
37    The user must implement the function ``POSIX_Init`` or the function name
38    provided in this configuration parameter.
39
40.. index:: CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE
41
42.. _CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE:
43
44CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE
45--------------------------------------
46
47CONSTANT:
48    ``CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE``
49
50DATA TYPE:
51    Unsigned integer (``size_t``).
52
53RANGE:
54    Zero or positive.
55
56DEFAULT VALUE:
57    The default value is 2 \* RTEMS_MINIMUM_STACK_SIZE.
58
59DESCRIPTION:
60    ``CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE`` is the stack size of the single
61    initialization thread defined by the POSIX API Initialization Threads
62    Table.
63
64NOTES:
65    If the stack size specified is greater than the configured minimum, it must
66    be accounted for in ``CONFIGURE_EXTRA_TASK_STACKS``.  See :ref:`Reserve
67    Task/Thread Stack Memory Above Minimum` for more information about
68    ``CONFIGURE_EXTRA_TASK_STACKS``.
69
70.. index:: CONFIGURE_POSIX_INIT_THREAD_TABLE
71
72.. _CONFIGURE_POSIX_INIT_THREAD_TABLE:
73
74CONFIGURE_POSIX_INIT_THREAD_TABLE
75---------------------------------
76
77CONSTANT:
78    ``CONFIGURE_POSIX_INIT_THREAD_TABLE``
79
80DATA TYPE:
81    Boolean feature macro.
82
83RANGE:
84    Defined or undefined.
85
86DEFAULT VALUE:
87    This field is not defined by default, as the user MUST select their own API
88    for initialization tasks.
89
90DESCRIPTION:
91    ``CONFIGURE_POSIX_INIT_THREAD_TABLE`` is defined if the user wishes to use
92    a POSIX API Initialization Threads Table.  The table built by
93    ``<rtems/confdefs.h>`` specifies the parameters for a single thread. This
94    is sufficient for applications which initialization the system from a
95    single task.
96
97    By default, this field is not defined as the user MUST select their own API
98    for initialization tasks.
99
100NOTES:
101    The application may choose to use the initialization tasks or threads table
102    from another API.
103
104    A compile time error will be generated if the user does not configure any
105    initialization tasks or threads.
Note: See TracBrowser for help on using the repository browser.