POSIX 符合性

根据 IEEE 1003.1-2017,本节详细介绍 Zephyr 的 POSIX 符合性。

POSIX System Interfaces

POSIX 系统接口

符号

支持

备注

_POSIX_CHOWN_RESTRICTED

0

_POSIX_NO_TRUNC

0

_POSIX_VDISABLE

'\0'

POSIX 系统接口

Symbol

Support

Remarks

_POSIX_VERSION

200809L

_POSIX_ASYNCHRONOUS_IO

200809L

CONFIG_POSIX_ASYNCHRONOUS_IO †

_POSIX_BARRIERS

200809L

CONFIG_POSIX_BARRIERS

_POSIX_CLOCK_SELECTION

200809L

CONFIG_POSIX_CLOCK_SELECTION

_POSIX_MAPPED_FILES

200809L

CONFIG_POSIX_MAPPED_FILES

_POSIX_MEMORY_PROTECTION

200809L

CONFIG_POSIX_MEMORY_PROTECTION †

_POSIX_READER_WRITER_LOCKS

200809L

CONFIG_POSIX_RW_LOCKS

_POSIX_REALTIME_SIGNALS

-1

CONFIG_POSIX_REALTIME_SIGNALS

_POSIX_SEMAPHORES

200809L

CONFIG_POSIX_SEMAPHORES

_POSIX_SPIN_LOCKS

200809L

CONFIG_POSIX_SPIN_LOCKS

_POSIX_THREAD_SAFE_FUNCTIONS

-1

CONFIG_POSIX_THREAD_SAFE_FUNCTIONS

_POSIX_THREADS

-1

CONFIG_POSIX_THREADS

_POSIX_TIMEOUTS

200809L

CONFIG_POSIX_TIMEOUTS

_POSIX_TIMERS

200809L

CONFIG_POSIX_TIMERS

_POSIX2_C_BIND

200809L

POSIX 系统接口(不受支持)

Symbol

Support

Remarks

_POSIX_JOB_CONTROL

-1

†

_POSIX_REGEXP

-1

†

_POSIX_SAVED_IDS

-1

†

_POSIX_SHELL

-1

†

POSIX 系统接口(可选)

Symbol

Support

Remarks

_POSIX_ADVISORY_INFO

-1

_POSIX_CPUTIME

200809L

CONFIG_POSIX_CPUTIME

_POSIX_FSYNC

200809L

CONFIG_POSIX_FSYNC

_POSIX_IPV6

200809L

CONFIG_POSIX_IPV6

_POSIX_MEMLOCK

200809L

CONFIG_POSIX_MEMLOCK †

_POSIX_MEMLOCK_RANGE

200809L

CONFIG_POSIX_MEMLOCK_RANGE

_POSIX_MESSAGE_PASSING

200809L

CONFIG_POSIX_MESSAGE_PASSING

_POSIX_MONOTONIC_CLOCK

200809L

CONFIG_POSIX_MONOTONIC_CLOCK

_POSIX_PRIORITIZED_IO

-1

_POSIX_PRIORITY_SCHEDULING

200809L

CONFIG_POSIX_PRIORITY_SCHEDULING

_POSIX_RAW_SOCKETS

200809L

CONFIG_POSIX_RAW_SOCKETS

_POSIX_SHARED_MEMORY_OBJECTS

200809L

CONFIG_POSIX_SHARED_MEMORY_OBJECTS

_POSIX_SPAWN

-1

†

_POSIX_SPORADIC_SERVER

-1

†

_POSIX_SYNCHRONIZED_IO

200809L

CONFIG_POSIX_SYNCHRONIZED_IO

_POSIX_THREAD_ATTR_STACKADDR

200809L

CONFIG_POSIX_THREAD_ATTR_STACKADDR

_POSIX_THREAD_ATTR_STACKSIZE

200809L

CONFIG_POSIX_THREAD_ATTR_STACKSIZE

_POSIX_THREAD_CPUTIME

200809L

CONFIG_POSIX_CPUTIME

_POSIX_THREAD_PRIO_INHERIT

200809L

CONFIG_POSIX_THREAD_PRIO_INHERIT

_POSIX_THREAD_PRIO_PROTECT

200809L

CONFIG_POSIX_THREAD_PRIO_PROTECT

_POSIX_THREAD_PRIORITY_SCHEDULING

200809L

CONFIG_POSIX_THREAD_PRIORITY_SCHEDULING

_POSIX_THREAD_PROCESS_SHARED

-1

_POSIX_THREAD_SPORADIC_SERVER

-1

_POSIX_TRACE

-1

_POSIX_TRACE_EVENT_FILTER

-1

_POSIX_TRACE_INHERIT

-1

_POSIX_TRACE_LOG

-1

_POSIX_TYPED_MEMORY_OBJECTS

-1

_XOPEN_CRYPT

-1

_XOPEN_REALTIME

700

CONFIG_XSI_REALTIME

_XOPEN_REALTIME_THREADS

-1

_XOPEN_STREAMS

200809L

CONFIG_XSI_STREAMS

_XOPEN_UNIX

-1

POSIX Shell and Utilities

Zephyr 目前不支持 POSIX shell 或实用工具。

POSIX shell 与实用工具

Symbol

Support

Remarks

_POSIX2_C_DEV

-1

†

_POSIX2_CHAR_TERM

-1

†

_POSIX2_FORT_DEV

-1

†

_POSIX2_FORT_RUN

-1

†

_POSIX2_LOCALEDEF

-1

†

_POSIX2_PBS

-1

†

_POSIX2_PBS_ACCOUNTING

-1

†

_POSIX2_PBS_LOCATE

-1

†

_POSIX2_PBS_MESSAGE

-1

†

_POSIX2_PBS_TRACK

-1

†

_POSIX2_SW_DEV

-1

†

_POSIX2_UPE

-1

†

_POSIX2_UNIX

-1

†

_POSIX2_UUCP

-1

†

XSI 符合性

X/Open System Interfaces

X/Open 系统接口

Symbol

Support

Remarks

_POSIX_FSYNC

200809L

CONFIG_POSIX_FSYNC

_POSIX_THREAD_ATTR_STACKADDR

200809L

CONFIG_POSIX_THREAD_ATTR_STACKADDR

_POSIX_THREAD_ATTR_STACKSIZE

200809L

CONFIG_POSIX_THREAD_ATTR_STACKSIZE

_POSIX_THREAD_PROCESS_SHARED

-1

备注

某些特性可能会表现出未定义行为,因为它们超出了 Zephyr 当前设计和能力的范围。例如,多处理、临时内存映射、多用户或正则表达式等功能在资源受限的嵌入式系统中并不常见。此类未定义行为用 †(短剑号)符号表示。更多细节请参见 此处。

备注

各种 POSIX 选项或选项组中列出的特性,可能由符合标准的 C 库实现全部或部分提供。这包括(但不限于)ISO C 标准的 POSIX 扩展(CX)。