[16b0d3f] | 1 | .. SPDX-License-Identifier: CC-BY-SA-4.0 |
---|
| 2 | |
---|
[4565256] | 3 | .. Copyright (C) 2020, 2021 embedded brains GmbH (http://www.embedded-brains.de) |
---|
[16b0d3f] | 4 | .. Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR) |
---|
| 5 | |
---|
[ad64ea0] | 6 | .. This file is part of the RTEMS quality process and was automatically |
---|
| 7 | .. generated. If you find something that needs to be fixed or |
---|
| 8 | .. worded better please post a report or patch to an RTEMS mailing list |
---|
| 9 | .. or raise a bug report: |
---|
[dd97e25] | 10 | .. |
---|
[ba633ec] | 11 | .. https://www.rtems.org/bugs.html |
---|
[63764a6] | 12 | .. |
---|
[ba633ec] | 13 | .. For information on updating and regenerating please refer to the How-To |
---|
| 14 | .. section in the Software Requirements Engineering chapter of the |
---|
| 15 | .. RTEMS Software Engineering manual. The manual is provided as a part of |
---|
| 16 | .. a release. For development sources please refer to the online |
---|
| 17 | .. documentation at: |
---|
[dd97e25] | 18 | .. |
---|
[ba633ec] | 19 | .. https://docs.rtems.org |
---|
[63764a6] | 20 | |
---|
[51a5138] | 21 | .. Generated from spec:/acfg/if/group-posix |
---|
| 22 | |
---|
[16b0d3f] | 23 | POSIX API Configuration |
---|
| 24 | ======================= |
---|
| 25 | |
---|
[79fb6fd] | 26 | This section describes configuration options related to the POSIX API. Most |
---|
| 27 | POSIX API objects are available by default since RTEMS 5.1. The queued signals |
---|
[9ba26e7] | 28 | and timers are only available if RTEMS was built with the enable POSIX |
---|
[79fb6fd] | 29 | build configuration option. |
---|
[16b0d3f] | 30 | |
---|
[51a5138] | 31 | .. Generated from spec:/acfg/if/max-posix-keys |
---|
| 32 | |
---|
[1c8ce33] | 33 | .. raw:: latex |
---|
| 34 | |
---|
| 35 | \clearpage |
---|
| 36 | |
---|
[16b0d3f] | 37 | .. index:: CONFIGURE_MAXIMUM_POSIX_KEYS |
---|
| 38 | |
---|
| 39 | .. _CONFIGURE_MAXIMUM_POSIX_KEYS: |
---|
| 40 | |
---|
| 41 | CONFIGURE_MAXIMUM_POSIX_KEYS |
---|
| 42 | ---------------------------- |
---|
| 43 | |
---|
[1c8ce33] | 44 | .. rubric:: CONSTANT: |
---|
| 45 | |
---|
| 46 | ``CONFIGURE_MAXIMUM_POSIX_KEYS`` |
---|
| 47 | |
---|
| 48 | .. rubric:: OPTION TYPE: |
---|
| 49 | |
---|
| 50 | This configuration option is an integer define. |
---|
[16b0d3f] | 51 | |
---|
[1c8ce33] | 52 | .. rubric:: DEFAULT VALUE: |
---|
[16b0d3f] | 53 | |
---|
[1c8ce33] | 54 | The default value is 0. |
---|
[16b0d3f] | 55 | |
---|
[1c8ce33] | 56 | .. rubric:: DESCRIPTION: |
---|
[7bad894] | 57 | |
---|
[1c8ce33] | 58 | The value of this configuration option defines the maximum number of POSIX |
---|
| 59 | API Keys that can be concurrently active. |
---|
[7bad894] | 60 | |
---|
[1c8ce33] | 61 | .. rubric:: NOTES: |
---|
[7bad894] | 62 | |
---|
[1c8ce33] | 63 | This object class can be configured in unlimited allocation mode, see |
---|
| 64 | :ref:`ConfigUnlimitedObjects`. |
---|
[7bad894] | 65 | |
---|
[1c8ce33] | 66 | .. rubric:: CONSTRAINTS: |
---|
[7bad894] | 67 | |
---|
[1c8ce33] | 68 | The following constraints apply to this configuration option: |
---|
[16b0d3f] | 69 | |
---|
[1c8ce33] | 70 | * The value of the configuration option shall be greater than or equal to zero. |
---|
| 71 | |
---|
| 72 | * The value of the configuration option shall be less than or equal to 65535. |
---|
| 73 | |
---|
| 74 | * The value of the configuration option shall be less than or equal to a |
---|
| 75 | BSP-specific and application-specific value which depends on the size of the |
---|
| 76 | memory available to the application. |
---|
| 77 | |
---|
| 78 | * The value of the configuration option may be defined through |
---|
| 79 | :c:func:`rtems_resource_unlimited` the enable unlimited objects for the |
---|
| 80 | object class, if the value passed to :c:func:`rtems_resource_unlimited` |
---|
| 81 | satisfies all other constraints of the configuration option. |
---|
[16b0d3f] | 82 | |
---|
[51a5138] | 83 | .. Generated from spec:/acfg/if/max-posix-key-value-pairs |
---|
| 84 | |
---|
[1c8ce33] | 85 | .. raw:: latex |
---|
| 86 | |
---|
| 87 | \clearpage |
---|
| 88 | |
---|
[16b0d3f] | 89 | .. index:: CONFIGURE_MAXIMUM_POSIX_KEY_VALUE_PAIRS |
---|
| 90 | |
---|
| 91 | .. _CONFIGURE_MAXIMUM_POSIX_KEY_VALUE_PAIRS: |
---|
| 92 | |
---|
| 93 | CONFIGURE_MAXIMUM_POSIX_KEY_VALUE_PAIRS |
---|
| 94 | --------------------------------------- |
---|
| 95 | |
---|
[1c8ce33] | 96 | .. rubric:: CONSTANT: |
---|
| 97 | |
---|
| 98 | ``CONFIGURE_MAXIMUM_POSIX_KEY_VALUE_PAIRS`` |
---|
| 99 | |
---|
| 100 | .. rubric:: OPTION TYPE: |
---|
| 101 | |
---|
| 102 | This configuration option is an integer define. |
---|
| 103 | |
---|
| 104 | .. rubric:: DEFAULT VALUE: |
---|
[16b0d3f] | 105 | |
---|
[1c8ce33] | 106 | The default value is |
---|
| 107 | :ref:`CONFIGURE_MAXIMUM_POSIX_KEYS` * |
---|
| 108 | ( :ref:`CONFIGURE_MAXIMUM_TASKS` + |
---|
| 109 | :ref:`CONFIGURE_MAXIMUM_POSIX_THREADS` ). |
---|
[16b0d3f] | 110 | |
---|
[1c8ce33] | 111 | .. rubric:: DESCRIPTION: |
---|
[7bad894] | 112 | |
---|
[1c8ce33] | 113 | The value of this configuration option defines the maximum number of key |
---|
| 114 | value pairs used by POSIX API Keys that can be concurrently active. |
---|
[7bad894] | 115 | |
---|
[1c8ce33] | 116 | .. rubric:: NOTES: |
---|
[7bad894] | 117 | |
---|
[1c8ce33] | 118 | This object class can be configured in unlimited allocation mode, see |
---|
| 119 | :ref:`ConfigUnlimitedObjects`. |
---|
[7bad894] | 120 | |
---|
[1c8ce33] | 121 | A key value pair is created by :c:func:`pthread_setspecific` if the value |
---|
| 122 | is not `NULL <https://en.cppreference.com/w/c/types/NULL>`_, otherwise it is deleted. |
---|
[7bad894] | 123 | |
---|
[1c8ce33] | 124 | .. rubric:: CONSTRAINTS: |
---|
[16b0d3f] | 125 | |
---|
[1c8ce33] | 126 | The following constraints apply to this configuration option: |
---|
[16b0d3f] | 127 | |
---|
[1c8ce33] | 128 | * The value of the configuration option shall be greater than or equal to zero. |
---|
[16b0d3f] | 129 | |
---|
[1c8ce33] | 130 | * The value of the configuration option shall be less than or equal to 65535. |
---|
| 131 | |
---|
| 132 | * The value of the configuration option shall be less than or equal to a |
---|
| 133 | BSP-specific and application-specific value which depends on the size of the |
---|
| 134 | memory available to the application. |
---|
| 135 | |
---|
| 136 | * The value of the configuration option may be defined through |
---|
| 137 | :c:func:`rtems_resource_unlimited` the enable unlimited objects for the |
---|
| 138 | object class, if the value passed to :c:func:`rtems_resource_unlimited` |
---|
| 139 | satisfies all other constraints of the configuration option. |
---|
[16b0d3f] | 140 | |
---|
[51a5138] | 141 | .. Generated from spec:/acfg/if/max-posix-message-queues |
---|
| 142 | |
---|
[1c8ce33] | 143 | .. raw:: latex |
---|
| 144 | |
---|
| 145 | \clearpage |
---|
| 146 | |
---|
[16b0d3f] | 147 | .. index:: CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES |
---|
| 148 | |
---|
| 149 | .. _CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES: |
---|
| 150 | |
---|
| 151 | CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES |
---|
| 152 | -------------------------------------- |
---|
| 153 | |
---|
[1c8ce33] | 154 | .. rubric:: CONSTANT: |
---|
[16b0d3f] | 155 | |
---|
[1c8ce33] | 156 | ``CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES`` |
---|
[16b0d3f] | 157 | |
---|
[1c8ce33] | 158 | .. rubric:: OPTION TYPE: |
---|
[16b0d3f] | 159 | |
---|
[1c8ce33] | 160 | This configuration option is an integer define. |
---|
[7bad894] | 161 | |
---|
[1c8ce33] | 162 | .. rubric:: DEFAULT VALUE: |
---|
[7bad894] | 163 | |
---|
[1c8ce33] | 164 | The default value is 0. |
---|
[7bad894] | 165 | |
---|
[1c8ce33] | 166 | .. rubric:: DESCRIPTION: |
---|
[7bad894] | 167 | |
---|
[1c8ce33] | 168 | The value of this configuration option defines the maximum number of POSIX |
---|
| 169 | API Message Queues that can be concurrently active. |
---|
[7bad894] | 170 | |
---|
[1c8ce33] | 171 | .. rubric:: NOTES: |
---|
[7bad894] | 172 | |
---|
[1c8ce33] | 173 | This object class can be configured in unlimited allocation mode, see |
---|
| 174 | :ref:`ConfigUnlimitedObjects`. You have to account for the memory used to |
---|
| 175 | store the messages of each message queue, see |
---|
| 176 | :ref:`CONFIGURE_MESSAGE_BUFFER_MEMORY`. |
---|
[16b0d3f] | 177 | |
---|
[1c8ce33] | 178 | .. rubric:: CONSTRAINTS: |
---|
| 179 | |
---|
| 180 | The following constraints apply to this configuration option: |
---|
| 181 | |
---|
| 182 | * The value of the configuration option shall be greater than or equal to zero. |
---|
| 183 | |
---|
| 184 | * The value of the configuration option shall be less than or equal to 65535. |
---|
| 185 | |
---|
| 186 | * The value of the configuration option shall be less than or equal to a |
---|
| 187 | BSP-specific and application-specific value which depends on the size of the |
---|
| 188 | memory available to the application. |
---|
| 189 | |
---|
| 190 | * The value of the configuration option shall be small enough so that the RTEMS |
---|
| 191 | Workspace size calculation carried out by ``<rtems/confdefs.h>`` does not |
---|
| 192 | overflow an integer of type `uintptr_t |
---|
| 193 | <https://en.cppreference.com/w/c/types/integer>`_. |
---|
| 194 | |
---|
| 195 | * The value of the configuration option may be defined through |
---|
| 196 | :c:func:`rtems_resource_unlimited` the enable unlimited objects for the |
---|
| 197 | object class, if the value passed to :c:func:`rtems_resource_unlimited` |
---|
| 198 | satisfies all other constraints of the configuration option. |
---|
[16b0d3f] | 199 | |
---|
[51a5138] | 200 | .. Generated from spec:/acfg/if/max-posix-queued-signals |
---|
| 201 | |
---|
[1c8ce33] | 202 | .. raw:: latex |
---|
| 203 | |
---|
| 204 | \clearpage |
---|
| 205 | |
---|
[16b0d3f] | 206 | .. index:: CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS |
---|
| 207 | |
---|
| 208 | .. _CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS: |
---|
| 209 | |
---|
| 210 | CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS |
---|
| 211 | -------------------------------------- |
---|
| 212 | |
---|
[1c8ce33] | 213 | .. rubric:: CONSTANT: |
---|
| 214 | |
---|
| 215 | ``CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS`` |
---|
[16b0d3f] | 216 | |
---|
[1c8ce33] | 217 | .. rubric:: OPTION TYPE: |
---|
[16b0d3f] | 218 | |
---|
[1c8ce33] | 219 | This configuration option is an integer define. |
---|
[16b0d3f] | 220 | |
---|
[1c8ce33] | 221 | .. rubric:: DEFAULT VALUE: |
---|
[7bad894] | 222 | |
---|
[1c8ce33] | 223 | The default value is 0. |
---|
[7bad894] | 224 | |
---|
[1c8ce33] | 225 | .. rubric:: DESCRIPTION: |
---|
[7bad894] | 226 | |
---|
[1c8ce33] | 227 | The value of this configuration option defines the maximum number of POSIX |
---|
| 228 | API Queued Signals that can be concurrently active. |
---|
[7bad894] | 229 | |
---|
[1c8ce33] | 230 | .. rubric:: NOTES: |
---|
[39ca06c] | 231 | |
---|
[1c8ce33] | 232 | Unlimited objects are not available for queued signals. |
---|
[16b0d3f] | 233 | |
---|
[9ba26e7] | 234 | Queued signals are only available if RTEMS was built with the POSIX API |
---|
| 235 | build configuration option enabled. |
---|
[16b0d3f] | 236 | |
---|
[1c8ce33] | 237 | .. rubric:: CONSTRAINTS: |
---|
| 238 | |
---|
| 239 | The following constraints apply to this configuration option: |
---|
| 240 | |
---|
| 241 | * The value of the configuration option shall be greater than or equal to zero. |
---|
| 242 | |
---|
| 243 | * The value of the configuration option shall be less than or equal to a |
---|
| 244 | BSP-specific and application-specific value which depends on the size of the |
---|
| 245 | memory available to the application. |
---|
| 246 | |
---|
| 247 | * The value of the configuration option shall be small enough so that the RTEMS |
---|
| 248 | Workspace size calculation carried out by ``<rtems/confdefs.h>`` does not |
---|
| 249 | overflow an integer of type `uintptr_t |
---|
| 250 | <https://en.cppreference.com/w/c/types/integer>`_. |
---|
| 251 | |
---|
| 252 | * The value of the configuration option shall be zero if the POSIX API is not |
---|
| 253 | enabled (e.g. RTEMS was built without the ``RTEMS_POSIX_API = True`` build |
---|
| 254 | configuration option). Otherwise a compile time error in the configuration |
---|
| 255 | file will occur. |
---|
[16b0d3f] | 256 | |
---|
[51a5138] | 257 | .. Generated from spec:/acfg/if/max-posix-semaphores |
---|
| 258 | |
---|
[1c8ce33] | 259 | .. raw:: latex |
---|
| 260 | |
---|
| 261 | \clearpage |
---|
| 262 | |
---|
[16b0d3f] | 263 | .. index:: CONFIGURE_MAXIMUM_POSIX_SEMAPHORES |
---|
| 264 | |
---|
| 265 | .. _CONFIGURE_MAXIMUM_POSIX_SEMAPHORES: |
---|
| 266 | |
---|
| 267 | CONFIGURE_MAXIMUM_POSIX_SEMAPHORES |
---|
| 268 | ---------------------------------- |
---|
| 269 | |
---|
[1c8ce33] | 270 | .. rubric:: CONSTANT: |
---|
| 271 | |
---|
| 272 | ``CONFIGURE_MAXIMUM_POSIX_SEMAPHORES`` |
---|
[16b0d3f] | 273 | |
---|
[1c8ce33] | 274 | .. rubric:: OPTION TYPE: |
---|
[16b0d3f] | 275 | |
---|
[1c8ce33] | 276 | This configuration option is an integer define. |
---|
[16b0d3f] | 277 | |
---|
[1c8ce33] | 278 | .. rubric:: DEFAULT VALUE: |
---|
[7bad894] | 279 | |
---|
[1c8ce33] | 280 | The default value is 0. |
---|
[7bad894] | 281 | |
---|
[1c8ce33] | 282 | .. rubric:: DESCRIPTION: |
---|
[7bad894] | 283 | |
---|
[1c8ce33] | 284 | The value of this configuration option defines the maximum number of POSIX |
---|
| 285 | API Named Semaphores that can be concurrently active. |
---|
[7bad894] | 286 | |
---|
[1c8ce33] | 287 | .. rubric:: NOTES: |
---|
[7bad894] | 288 | |
---|
[1c8ce33] | 289 | This object class can be configured in unlimited allocation mode, see |
---|
| 290 | :ref:`ConfigUnlimitedObjects`. |
---|
[7bad894] | 291 | |
---|
[1c8ce33] | 292 | Named semaphores are created with :c:func:`sem_open`. Semaphores |
---|
| 293 | initialized with :c:func:`sem_init` are not affected by this |
---|
| 294 | configuration option since the storage space for these semaphores is |
---|
| 295 | user-provided. |
---|
[16b0d3f] | 296 | |
---|
[1c8ce33] | 297 | .. rubric:: CONSTRAINTS: |
---|
[16b0d3f] | 298 | |
---|
[1c8ce33] | 299 | The following constraints apply to this configuration option: |
---|
| 300 | |
---|
| 301 | * The value of the configuration option shall be greater than or equal to zero. |
---|
| 302 | |
---|
| 303 | * The value of the configuration option shall be less than or equal to 65535. |
---|
| 304 | |
---|
| 305 | * The value of the configuration option shall be less than or equal to a |
---|
| 306 | BSP-specific and application-specific value which depends on the size of the |
---|
| 307 | memory available to the application. |
---|
| 308 | |
---|
| 309 | * The value of the configuration option shall be small enough so that the RTEMS |
---|
| 310 | Workspace size calculation carried out by ``<rtems/confdefs.h>`` does not |
---|
| 311 | overflow an integer of type `uintptr_t |
---|
| 312 | <https://en.cppreference.com/w/c/types/integer>`_. |
---|
| 313 | |
---|
| 314 | * The value of the configuration option may be defined through |
---|
| 315 | :c:func:`rtems_resource_unlimited` the enable unlimited objects for the |
---|
| 316 | object class, if the value passed to :c:func:`rtems_resource_unlimited` |
---|
| 317 | satisfies all other constraints of the configuration option. |
---|
[16b0d3f] | 318 | |
---|
[51a5138] | 319 | .. Generated from spec:/acfg/if/max-posix-shms |
---|
| 320 | |
---|
[1c8ce33] | 321 | .. raw:: latex |
---|
| 322 | |
---|
| 323 | \clearpage |
---|
| 324 | |
---|
[4032c96] | 325 | .. index:: CONFIGURE_MAXIMUM_POSIX_SHMS |
---|
| 326 | |
---|
| 327 | .. _CONFIGURE_MAXIMUM_POSIX_SHMS: |
---|
| 328 | |
---|
| 329 | CONFIGURE_MAXIMUM_POSIX_SHMS |
---|
| 330 | ---------------------------- |
---|
| 331 | |
---|
[1c8ce33] | 332 | .. rubric:: CONSTANT: |
---|
| 333 | |
---|
| 334 | ``CONFIGURE_MAXIMUM_POSIX_SHMS`` |
---|
| 335 | |
---|
| 336 | .. rubric:: OPTION TYPE: |
---|
[4032c96] | 337 | |
---|
[1c8ce33] | 338 | This configuration option is an integer define. |
---|
[4032c96] | 339 | |
---|
[1c8ce33] | 340 | .. rubric:: DEFAULT VALUE: |
---|
[4032c96] | 341 | |
---|
[1c8ce33] | 342 | The default value is 0. |
---|
[4032c96] | 343 | |
---|
[1c8ce33] | 344 | .. rubric:: DESCRIPTION: |
---|
[4032c96] | 345 | |
---|
[1c8ce33] | 346 | The value of this configuration option defines the maximum number of POSIX |
---|
| 347 | API Shared Memory objects that can be concurrently active. |
---|
[4032c96] | 348 | |
---|
[1c8ce33] | 349 | .. rubric:: NOTES: |
---|
[4032c96] | 350 | |
---|
[1c8ce33] | 351 | This object class can be configured in unlimited allocation mode, see |
---|
| 352 | :ref:`ConfigUnlimitedObjects`. |
---|
[4032c96] | 353 | |
---|
[1c8ce33] | 354 | .. rubric:: CONSTRAINTS: |
---|
[4032c96] | 355 | |
---|
[1c8ce33] | 356 | The following constraints apply to this configuration option: |
---|
[4032c96] | 357 | |
---|
[1c8ce33] | 358 | * The value of the configuration option shall be greater than or equal to zero. |
---|
| 359 | |
---|
| 360 | * The value of the configuration option shall be less than or equal to 65535. |
---|
| 361 | |
---|
| 362 | * The value of the configuration option shall be less than or equal to a |
---|
| 363 | BSP-specific and application-specific value which depends on the size of the |
---|
| 364 | memory available to the application. |
---|
| 365 | |
---|
| 366 | * The value of the configuration option shall be small enough so that the RTEMS |
---|
| 367 | Workspace size calculation carried out by ``<rtems/confdefs.h>`` does not |
---|
| 368 | overflow an integer of type `uintptr_t |
---|
| 369 | <https://en.cppreference.com/w/c/types/integer>`_. |
---|
| 370 | |
---|
| 371 | * The value of the configuration option may be defined through |
---|
| 372 | :c:func:`rtems_resource_unlimited` the enable unlimited objects for the |
---|
| 373 | object class, if the value passed to :c:func:`rtems_resource_unlimited` |
---|
| 374 | satisfies all other constraints of the configuration option. |
---|
[4032c96] | 375 | |
---|
[51a5138] | 376 | .. Generated from spec:/acfg/if/max-posix-threads |
---|
| 377 | |
---|
[1c8ce33] | 378 | .. raw:: latex |
---|
| 379 | |
---|
| 380 | \clearpage |
---|
| 381 | |
---|
[f3076bc] | 382 | .. index:: CONFIGURE_MAXIMUM_POSIX_THREADS |
---|
[16b0d3f] | 383 | |
---|
[f3076bc] | 384 | .. _CONFIGURE_MAXIMUM_POSIX_THREADS: |
---|
[16b0d3f] | 385 | |
---|
[f3076bc] | 386 | CONFIGURE_MAXIMUM_POSIX_THREADS |
---|
| 387 | ------------------------------- |
---|
[16b0d3f] | 388 | |
---|
[1c8ce33] | 389 | .. rubric:: CONSTANT: |
---|
| 390 | |
---|
| 391 | ``CONFIGURE_MAXIMUM_POSIX_THREADS`` |
---|
| 392 | |
---|
| 393 | .. rubric:: OPTION TYPE: |
---|
| 394 | |
---|
| 395 | This configuration option is an integer define. |
---|
[16b0d3f] | 396 | |
---|
[1c8ce33] | 397 | .. rubric:: DEFAULT VALUE: |
---|
[16b0d3f] | 398 | |
---|
[1c8ce33] | 399 | The default value is 0. |
---|
[16b0d3f] | 400 | |
---|
[1c8ce33] | 401 | .. rubric:: DESCRIPTION: |
---|
[7bad894] | 402 | |
---|
[1c8ce33] | 403 | The value of this configuration option defines the maximum number of POSIX |
---|
| 404 | API Threads that can be concurrently active. |
---|
[7bad894] | 405 | |
---|
[1c8ce33] | 406 | .. rubric:: NOTES: |
---|
[7bad894] | 407 | |
---|
[1c8ce33] | 408 | This object class can be configured in unlimited allocation mode, see |
---|
| 409 | :ref:`ConfigUnlimitedObjects`. |
---|
[7bad894] | 410 | |
---|
[1c8ce33] | 411 | This calculations for the required memory in the RTEMS Workspace for threads |
---|
| 412 | assume that each thread has a minimum stack size and has floating point |
---|
| 413 | support enabled. The configuration option :ref:`CONFIGURE_EXTRA_TASK_STACKS` is used |
---|
| 414 | to specify thread stack requirements **above** the minimum size required. |
---|
[7bad894] | 415 | |
---|
[1c8ce33] | 416 | The maximum number of Classic API Tasks is specified by |
---|
| 417 | :ref:`CONFIGURE_MAXIMUM_TASKS`. |
---|
[16b0d3f] | 418 | |
---|
[1c8ce33] | 419 | All POSIX threads have floating point enabled. |
---|
[16b0d3f] | 420 | |
---|
[1c8ce33] | 421 | .. rubric:: CONSTRAINTS: |
---|
[16b0d3f] | 422 | |
---|
[1c8ce33] | 423 | The following constraints apply to this configuration option: |
---|
[16b0d3f] | 424 | |
---|
[1c8ce33] | 425 | * The value of the configuration option shall be greater than or equal to zero. |
---|
| 426 | |
---|
| 427 | * The value of the configuration option shall be less than or equal to 65535. |
---|
| 428 | |
---|
| 429 | * The value of the configuration option shall be less than or equal to a |
---|
| 430 | BSP-specific and application-specific value which depends on the size of the |
---|
| 431 | memory available to the application. |
---|
| 432 | |
---|
| 433 | * The value of the configuration option shall be small enough so that the task |
---|
| 434 | stack space calculation carried out by ``<rtems/confdefs.h>`` does not |
---|
| 435 | overflow an integer of type `uintptr_t |
---|
| 436 | <https://en.cppreference.com/w/c/types/integer>`_. |
---|
[16b0d3f] | 437 | |
---|
[51a5138] | 438 | .. Generated from spec:/acfg/if/max-posix-timers |
---|
| 439 | |
---|
[1c8ce33] | 440 | .. raw:: latex |
---|
| 441 | |
---|
| 442 | \clearpage |
---|
| 443 | |
---|
[f3076bc] | 444 | .. index:: CONFIGURE_MAXIMUM_POSIX_TIMERS |
---|
| 445 | |
---|
| 446 | .. _CONFIGURE_MAXIMUM_POSIX_TIMERS: |
---|
| 447 | |
---|
| 448 | CONFIGURE_MAXIMUM_POSIX_TIMERS |
---|
| 449 | ------------------------------ |
---|
[16b0d3f] | 450 | |
---|
[1c8ce33] | 451 | .. rubric:: CONSTANT: |
---|
| 452 | |
---|
| 453 | ``CONFIGURE_MAXIMUM_POSIX_TIMERS`` |
---|
| 454 | |
---|
| 455 | .. rubric:: OPTION TYPE: |
---|
| 456 | |
---|
| 457 | This configuration option is an integer define. |
---|
| 458 | |
---|
| 459 | .. rubric:: DEFAULT VALUE: |
---|
[16b0d3f] | 460 | |
---|
[1c8ce33] | 461 | The default value is 0. |
---|
[16b0d3f] | 462 | |
---|
[1c8ce33] | 463 | .. rubric:: DESCRIPTION: |
---|
[16b0d3f] | 464 | |
---|
[1c8ce33] | 465 | The value of this configuration option defines the maximum number of POSIX |
---|
| 466 | API Timers that can be concurrently active. |
---|
[7bad894] | 467 | |
---|
[1c8ce33] | 468 | .. rubric:: NOTES: |
---|
[7bad894] | 469 | |
---|
[1c8ce33] | 470 | This object class can be configured in unlimited allocation mode, see |
---|
| 471 | :ref:`ConfigUnlimitedObjects`. |
---|
[7bad894] | 472 | |
---|
[9ba26e7] | 473 | Timers are only available if RTEMS was built with the POSIX API build |
---|
| 474 | configuration option enabled. |
---|
[7bad894] | 475 | |
---|
[1c8ce33] | 476 | .. rubric:: CONSTRAINTS: |
---|
[7bad894] | 477 | |
---|
[1c8ce33] | 478 | The following constraints apply to this configuration option: |
---|
[39ca06c] | 479 | |
---|
[9ba26e7] | 480 | * The value of the configuration option shall be greater than or equal |
---|
| 481 | to zero. |
---|
[16b0d3f] | 482 | |
---|
[9ba26e7] | 483 | * The value of the configuration option shall be less than or equal |
---|
| 484 | to 65535. |
---|
[16b0d3f] | 485 | |
---|
[1c8ce33] | 486 | * The value of the configuration option shall be less than or equal to a |
---|
[9ba26e7] | 487 | BSP-specific and application-specific value which depends on the size |
---|
| 488 | of the memory available to the application. |
---|
[1c8ce33] | 489 | |
---|
| 490 | * The value of the configuration option may be defined through |
---|
| 491 | :c:func:`rtems_resource_unlimited` the enable unlimited objects for the |
---|
| 492 | object class, if the value passed to :c:func:`rtems_resource_unlimited` |
---|
| 493 | satisfies all other constraints of the configuration option. |
---|
| 494 | |
---|
[9ba26e7] | 495 | * The value of the configuration option shall be zero if the POSIX API |
---|
| 496 | is not |
---|
| 497 | enabled (e.g. RTEMS was built without the ``RTEMS_POSIX_API = True`` |
---|
| 498 | build configuration option). Otherwise a compile time error in the |
---|
| 499 | configuration |
---|
[1c8ce33] | 500 | file will occur. |
---|
[16b0d3f] | 501 | |
---|
[51a5138] | 502 | .. Generated from spec:/acfg/if/min-posix-thread-stack-size |
---|
| 503 | |
---|
[1c8ce33] | 504 | .. raw:: latex |
---|
| 505 | |
---|
| 506 | \clearpage |
---|
| 507 | |
---|
[16b0d3f] | 508 | .. index:: CONFIGURE_MINIMUM_POSIX_THREAD_STACK_SIZE |
---|
| 509 | .. index:: minimum POSIX thread stack size |
---|
| 510 | |
---|
| 511 | .. _CONFIGURE_MINIMUM_POSIX_THREAD_STACK_SIZE: |
---|
| 512 | |
---|
| 513 | CONFIGURE_MINIMUM_POSIX_THREAD_STACK_SIZE |
---|
| 514 | ----------------------------------------- |
---|
| 515 | |
---|
[1c8ce33] | 516 | .. rubric:: CONSTANT: |
---|
| 517 | |
---|
| 518 | ``CONFIGURE_MINIMUM_POSIX_THREAD_STACK_SIZE`` |
---|
| 519 | |
---|
| 520 | .. rubric:: OPTION TYPE: |
---|
| 521 | |
---|
| 522 | This configuration option is an integer define. |
---|
| 523 | |
---|
| 524 | .. rubric:: DEFAULT VALUE: |
---|
[16b0d3f] | 525 | |
---|
[1c8ce33] | 526 | The default value is two times the value of |
---|
| 527 | :ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`. |
---|
[16b0d3f] | 528 | |
---|
[1c8ce33] | 529 | .. rubric:: DESCRIPTION: |
---|
[7bad894] | 530 | |
---|
[1c8ce33] | 531 | The value of this configuration option defines the minimum stack size in |
---|
| 532 | bytes for every POSIX thread in the system. |
---|
[7bad894] | 533 | |
---|
[1c8ce33] | 534 | .. rubric:: CONSTRAINTS: |
---|
[7bad894] | 535 | |
---|
[1c8ce33] | 536 | The following constraints apply to this configuration option: |
---|
[16b0d3f] | 537 | |
---|
[1c8ce33] | 538 | * The value of the configuration option shall be small enough so that the task |
---|
| 539 | stack space calculation carried out by ``<rtems/confdefs.h>`` does not |
---|
| 540 | overflow an integer of type `uintptr_t |
---|
| 541 | <https://en.cppreference.com/w/c/types/integer>`_. |
---|
[16b0d3f] | 542 | |
---|
[1c8ce33] | 543 | * The value of the configuration option shall be greater than or equal to a |
---|
| 544 | BSP-specific and application-specific minimum value. |
---|