diff --git a/doc/services/portability/posix/conformance/index.rst b/doc/services/portability/posix/conformance/index.rst index d664e161702af2f..dee98b1efd108d1 100644 --- a/doc/services/portability/posix/conformance/index.rst +++ b/doc/services/portability/posix/conformance/index.rst @@ -5,22 +5,6 @@ POSIX Conformance As per `IEEE 1003.1-2017`, this section details Zephyr's POSIX conformance. -.. _posix_undefined_behaviour: - -.. note:: - As per POSIX 1003.13, single process mode is supported directly by both PSE51 and PSE52 - profiles. While Zephyr includes support for many features found in PSE53, PSE53 itself requires - supporting multiple processes. Since supporting multiple processes is beyond the scope of - Zephyr's current design, some features requiring multi-process capabilities may exhibit - undefined behaviour, which we denote with the † (obelus) symbol. - -.. _posix_libc_provided: - -.. note:: - Features listed in various POSIX Options or Option Groups may be provided in whole or in part - by a conformant C library implementation. This includes (but is not limited to) POSIX - Extensions to the ISO C Standard (`CX`_). - .. _posix_system_interfaces: POSIX System Interfaces @@ -34,7 +18,7 @@ POSIX System Interfaces _POSIX_CHOWN_RESTRICTED, 0, _POSIX_NO_TRUNC, 0, - _POSIX_VDISABLE, 0, + _POSIX_VDISABLE, ``'\0'``, .. The following should be valued greater than zero in Zephyr, in order to be strictly conformant with the POSIX specification. @@ -84,14 +68,14 @@ POSIX System Interfaces :ref:`_POSIX_CPUTIME`, 200809L, :kconfig:option:`CONFIG_POSIX_CPUTIME` :ref:`_POSIX_FSYNC`, 200809L, :kconfig:option:`CONFIG_POSIX_FSYNC` :ref:`_POSIX_IPV6`, 200809L, :kconfig:option:`CONFIG_POSIX_IPV6` - _POSIX_MEMLOCK, -1, - _POSIX_MEMLOCK_RANGE, -1, + :ref:`_POSIX_MEMLOCK `, -1, + :ref:`_POSIX_MEMLOCK_RANGE `, -1, :ref:`_POSIX_MESSAGE_PASSING`, 200809L, :kconfig:option:`CONFIG_POSIX_MESSAGE_PASSING` :ref:`_POSIX_MONOTONIC_CLOCK`, 200809L, :kconfig:option:`CONFIG_POSIX_MONOTONIC_CLOCK` _POSIX_PRIORITIZED_IO, -1, :ref:`_POSIX_PRIORITY_SCHEDULING`, 200809L, :kconfig:option:`CONFIG_POSIX_PRIORITY_SCHEDULING` :ref:`_POSIX_RAW_SOCKETS`, 200809L, :kconfig:option:`CONFIG_POSIX_RAW_SOCKETS` - _POSIX_SHARED_MEMORY_OBJECTS, -1, + :ref:`_POSIX_SHARED_MEMORY_OBJECTS `, -1, _POSIX_SPAWN, -1, :ref:`†` _POSIX_SPORADIC_SERVER, -1, :ref:`†` :ref:`_POSIX_SYNCHRONIZED_IO `, -1, :kconfig:option:`CONFIG_POSIX_SYNCHRONIZED_IO` @@ -141,10 +125,10 @@ Zephyr does not support a POSIX shell or utilities at this time. XSI Conformance ############### -XSI System Interfaces -===================== +X/Open System Interfaces +======================== -.. csv-table:: XSI System Interfaces +.. csv-table:: X/Open System Interfaces :header: Symbol, Support, Remarks :widths: 50, 10, 50 @@ -153,4 +137,18 @@ XSI System Interfaces :ref:`_POSIX_THREAD_ATTR_STACKSIZE`, 200809L, :kconfig:option:`CONFIG_POSIX_THREADS` _POSIX_THREAD_PROCESS_SHARED, -1, +.. _posix_undefined_behaviour: + +.. note:: + Features requiring multi-processing, ad-hoc memory-mapping, multiple users, etc, may exhibit + undefined behaviour as they fall beyond the scope of Zephyr's current design and capabilities. + This is denoted with the † (obelus) symbol. Additional details `here `. + +.. _posix_libc_provided: + +.. note:: + Features listed in various POSIX Options or Option Groups may be provided in whole or in part + by a conformant C library implementation. This includes (but is not limited to) POSIX + Extensions to the ISO C Standard (`CX`_). + .. _CX: https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap01.html