1 | .. SPDX-License-Identifier: CC-BY-SA-4.0 |
---|
2 | |
---|
3 | .. Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR) |
---|
4 | |
---|
5 | POSIX Initialization Thread Configuration |
---|
6 | ========================================= |
---|
7 | |
---|
8 | The ``<rtems/confdefs.h>`` configuration system can automatically generate a |
---|
9 | POSIX Initialization Threads Table named ``POSIX_Initialization_threads`` with |
---|
10 | a 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 | |
---|
16 | CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT |
---|
17 | --------------------------------------- |
---|
18 | |
---|
19 | CONSTANT: |
---|
20 | ``CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT`` |
---|
21 | |
---|
22 | DATA TYPE: |
---|
23 | POSIX thread function pointer (``void *(*entry_point)(void *)``). |
---|
24 | |
---|
25 | RANGE: |
---|
26 | Undefined or a valid POSIX thread function pointer. |
---|
27 | |
---|
28 | DEFAULT VALUE: |
---|
29 | The default value is ``POSIX_Init``. |
---|
30 | |
---|
31 | DESCRIPTION: |
---|
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 | |
---|
36 | NOTES: |
---|
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 | |
---|
44 | CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE |
---|
45 | -------------------------------------- |
---|
46 | |
---|
47 | CONSTANT: |
---|
48 | ``CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE`` |
---|
49 | |
---|
50 | DATA TYPE: |
---|
51 | Unsigned integer (``size_t``). |
---|
52 | |
---|
53 | RANGE: |
---|
54 | Zero or positive. |
---|
55 | |
---|
56 | DEFAULT VALUE: |
---|
57 | The default value is 2 \* RTEMS_MINIMUM_STACK_SIZE. |
---|
58 | |
---|
59 | DESCRIPTION: |
---|
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 | |
---|
64 | NOTES: |
---|
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 | |
---|
74 | CONFIGURE_POSIX_INIT_THREAD_TABLE |
---|
75 | --------------------------------- |
---|
76 | |
---|
77 | CONSTANT: |
---|
78 | ``CONFIGURE_POSIX_INIT_THREAD_TABLE`` |
---|
79 | |
---|
80 | DATA TYPE: |
---|
81 | Boolean feature macro. |
---|
82 | |
---|
83 | RANGE: |
---|
84 | Defined or undefined. |
---|
85 | |
---|
86 | DEFAULT VALUE: |
---|
87 | This field is not defined by default, as the user MUST select their own API |
---|
88 | for initialization tasks. |
---|
89 | |
---|
90 | DESCRIPTION: |
---|
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 | |
---|
100 | NOTES: |
---|
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. |
---|