POSIX
Apache NuttX is not licensed to use the POSIX trademark. NuttX uses the POSIX standard as a development guideline only.
This page summarizes supported POSIX features in NuttX.
POSIX Subprofiles
POSIX PSE51 - Minimal
Units of Functionality Requirements:
Symbol |
Support |
Remarks |
---|---|---|
POSIX_ADA_LANG_SUPPORT |
No |
|
Yes |
||
94/105 [1] |
||
Yes |
||
Yes |
||
7/9 |
||
Yes |
||
2/4 |
||
2/4 |
POSIX.1 Option Requirements:
Symbol |
Support |
Remarks |
---|---|---|
Yes |
||
Yes |
||
Yes [3] |
||
Yes [3] |
||
Yes |
||
No |
||
201712L |
||
201712L |
||
201712L |
||
Yes |
||
Yes |
||
Yes |
||
201712L |
||
Yes |
|
|
Yes |
|
|
201712L |
||
Yes |
|
|
Yes |
||
Yes |
|
|
Yes [5] |
||
Yes [5] |
NuttX provides dummy implementations for _POSIX_MEMLOCK
and
_POSIX_MEMLOCK_RANGE
which is sufficient for devices without MMU,
but doesn’t meet the requirement for devices with MMU.
Deprecated in new revisions of POSIX. Merged into other base options.
Requred only for the development platform. For PSE54 this requirement is also for execution platform whis is not supported.
Requirements for Other Standards:
Symbol |
Support |
Remarks |
---|---|---|
POSIX.26 |
? |
POSIX PSE52 - Real-Time Controller
The Realtime Controller System Profile (PSE52) includes all features from PSE51.
Units of Functionality Requirements:
Symbol |
Support |
Remarks |
---|---|---|
Yes [6] |
|
|
Yes |
||
Yes |
NuttX supports different libm implementations with different sets of supported functions. libm support in NuttX is controlled by Kconfig choice option.
POSIX.1 Option Requirements
Symbol |
Support |
Remarks |
---|---|---|
201712L |
||
Yes |
|
|
_POSIX_TRACE [7] |
No |
|
_POSIX_TRACE_EVENT_FILTER [7] |
No |
|
_POSIX_TRACE_LOG [7] |
No |
_POSIX_TRACE*
are obsolete.
POSIX PSE53 - Dedicated
The Dedicated Realtime System Profile (PSE53) includes all features from PSE52 and PSE51.
Units of Functionality Requirements:
Symbol |
Support |
Remarks |
---|---|---|
POSIX_EVENT_MGMT [8] |
Yes |
|
25/29 |
||
Yes |
|
|
Yes |
|
|
No |
Deprecated in new revisions of POSIX.
Merged into POSIX_DEVICE_IO
.
POSIX.1 Option Requirements
Symbol |
Support |
Remarks |
---|---|---|
201712L |
|
|
201712L |
||
Yes [9] |
||
201712L |
||
Yes |
||
Yes |
||
13/17 |
|
|
Yes |
|
|
201712L |
NuttX provides dummy implementations for _POSIX_MEMORY_PROTECTION
which is sufficient for devices without MMU, but doesn’t meet the
requirement for devices with MMU.
POSIX PSE54 - Multipurpose
The Multipurpose Realtime System Profile (PSE54) includes all features from PSE53, PSE52 and PSE51.
Units of Functionality Requirements:
Symbol |
Support |
Remarks |
---|---|---|
3/15 |
|
|
Yes |
|
|
Yes |
|
|
Yes |
||
1/4 |
||
Yes |
||
3/5 |
||
Yes |
||
Yes |
|
|
Yes |
||
8/10 |
||
POSIX_WIDE_CHAR_IO [10] |
||
Yes |
||
1/4 |
Deprecated in new revision of POSIX.
Moved to POSIX_WIDE_CHAR_DEVICE_IO
.
POSIX.1 Option Requirements
Symbol |
Support |
Remarks |
---|---|---|
2/4 |
||
No |
||
No |
||
? |
||
No |
||
No |
Functionality Requirements
POSIX_C_LANG_JUMP
API |
Support |
---|---|
|
Yes |
|
Yes |
POSIX_C_LANG_SUPPORT
API |
Support |
---|---|
abs() |
Yes |
asctime() |
Yes |
asctime_r() |
Yes |
atof() |
Yes |
atoi() |
Yes |
atol() |
Yes |
atoll() |
Yes |
bsearch() |
Yes |
calloc() |
Yes |
ctime() |
Yes |
ctime_r() |
Yes |
difftime() |
Yes |
div() |
Yes |
feclearexcept() |
No |
fegetenv() |
No |
fegetexceptflag() |
No |
fegetround() |
No |
feholdexcept() |
No |
feraiseexcept() |
No |
fesetenv() |
No |
fesetexceptflag() |
No |
fesetround() |
No |
fetestexcept() |
No |
feupdateenv() |
No |
free() |
Yes |
gmtime() |
Yes |
gmtime_r() |
Yes |
imaxabs() |
Yes |
imaxdiv() |
Yes |
isalnum() |
Yes |
isalpha() |
Yes |
isblank() |
Yes |
iscntrl() |
Yes |
isdigit() |
Yes |
isgraph() |
Yes |
islower() |
Yes |
isprint() |
Yes |
ispunct() |
Yes |
isspace() |
Yes |
isupper() |
Yes |
isxdigit() |
Yes |
labs() |
Yes |
ldiv() |
Yes |
llabs() |
Yes |
lldiv() |
Yes |
localeconv() |
Yes |
localtime() |
Yes |
localtime_r() |
Yes |
malloc() |
Yes |
memchr() |
Yes |
memcmp() |
Yes |
memcpy() |
Yes |
memmove() |
Yes |
memset() |
Yes |
mktime() |
Yes |
qsort() |
Yes |
rand() |
Yes |
rand_r() |
Yes |
realloc() |
Yes |
setlocale() |
Yes |
snprintf() |
Yes |
sprintf() |
Yes |
srand() |
Yes |
sscanf() |
Yes |
strcat() |
Yes |
strchr() |
Yes |
strcmp() |
Yes |
strcoll() |
Yes |
strcpy() |
Yes |
strcspn() |
Yes |
strerror() |
Yes |
strerror_r() |
Yes |
strftime() |
Yes |
strlen() |
Yes |
strncat() |
Yes |
strncmp() |
Yes |
strncpy() |
Yes |
strpbrk() |
Yes |
strrchr() |
Yes |
strspn() |
Yes |
strstr() |
Yes |
strtod() |
Yes |
strtof() |
Yes |
strtoimax() |
Yes |
strtok() |
Yes |
strtok_r() |
Yes |
strtol() |
Yes |
strtold() |
Yes |
strtoll() |
Yes |
strtoul() |
Yes |
strtoull() |
Yes |
strtoumax() |
Yes |
strxfrm() |
Yes |
time() |
Yes |
tolower() |
Yes |
toupper() |
Yes |
tzname |
Yes |
tzset() |
Yes |
va_arg() |
Yes |
va_copy() |
Yes |
va_end() |
Yes |
va_start() |
Yes |
vsnprintf() |
Yes |
vsprintf() |
Yes |
vsscanf() |
Yes |
POSIX_DEVICE_IO
Device Input and Output:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
Yes |
|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
Yes |
|
|
Yes |
Yes |
|
posix_close() |
No |
|
Yes |
|
Yes |
Yes |
|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
Yes |
|
Yes |
|
|
Yes |
Yes |
|
|
Yes |
|
Yes |
stderr |
Yes |
stdin |
Yes |
stdout |
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
Yes |
POSIX_FILE_LOCKING
Thread-Safe Stdio Locking:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
POSIX_SINGLE_PROCESS
Single Process:
API |
Support |
---|---|
confstr() |
No |
environ |
Yes |
errno |
Yes |
Yes |
|
secure_getenv() |
No |
Yes |
|
|
Yes |
|
Yes |
Yes |
POSIX_THREADS_BASE
Base Threads:
API |
Support |
---|---|
|
Yes |
Yes |
|
|
Yes |
Yes |
|
Yes |
|
|
Yes |
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
|
Yes |
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
|
Yes |
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
|
Yes |
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
POSIX_THREADS_EXT
Extended Threads:
API |
Support |
---|---|
pthread_attr_getguardsize() |
No |
pthread_attr_setguardsize() |
No |
Yes |
|
Yes |
POSIX_C_LANG_MATH
Depends on the enabled libm
implementation [11].
Maths Library:
API |
---|
CMPLX() |
CMPLXF() |
CMPLXL() |
acos() |
acosf() |
acosh() |
acoshf() |
acoshl() |
acosl() |
asin() |
asinf() |
asinh() |
asinhf() |
asinhl() |
asinl() |
atan() |
atan2() |
atan2f() |
atan2l() |
atanf() |
atanh() |
atanhf() |
atanhl() |
atanl() |
cabs() |
cabsf() |
cabsl() |
cacos() |
cacosf() |
cacosh() |
cacoshf() |
cacoshl() |
cacosl() |
carg() |
cargf() |
cargl() |
casin() |
casinf() |
casinh() |
casinhf() |
casinhl() |
casinl() |
catan() |
catanf() |
catanh() |
catanhf() |
catanhl() |
catanl() |
cbrt() |
cbrtf() |
cbrtl() |
ccos() |
ccosf() |
ccosh() |
ccoshf() |
ccoshl() |
ccosl() |
ceil() |
ceilf() |
ceill() |
cexp() |
cexpf() |
cexpl() |
cimag() |
cimagf() |
cimagl() |
clog() |
clogf() |
clogl() |
conj() |
conjf() |
conjl() |
copysign() |
copysignf() |
copysignl() |
cos() |
cosf() |
cosh() |
coshf() |
coshl() |
cosl() |
cpow() |
cpowf() |
cpowl() |
cproj() |
cprojf() |
cprojl() |
creal() |
crealf() |
creall() |
csin() |
csinf() |
csinh() |
csinhf() |
csinhl() |
csinl() |
csqrt() |
csqrtf() |
csqrtl() |
ctan() |
ctanf() |
ctanh() |
ctanhf() |
ctanhl() |
ctanl() |
erf() |
erfc() |
erfcf() |
erfcl() |
erff() |
erfl() |
exp() |
exp2() |
exp2f() |
exp2l() |
expf() |
expl() |
expm1() |
expm1f() |
expm1l() |
fabs() |
fabsf() |
fabsl() |
fdim() |
fdimf() |
fdiml() |
floor() |
floorf() |
floorl() |
fma() |
fmaf() |
fmal() |
fmax() |
fmaxf() |
fmaxl() |
fmin() |
fminf() |
fminl() |
fmod() |
fmodf() |
fmodl() |
fpclassify() |
frexp() |
frexpf() |
frexpl() |
hypot() |
hypotf() |
hypotl() |
ilogb() |
ilogbf() |
ilogbl() |
isfinite() |
isgreater() |
isgreaterequal() |
isinf() |
isless() |
islessequal() |
islessgreater() |
isnan() |
isnormal() |
isunordered() |
ldexp() |
ldexpf() |
ldexpl() |
lgamma() |
lgammaf() |
lgammal() |
llrint() |
llrintf() |
llrintl() |
llround() |
llroundf() |
llroundl() |
log() |
log10() |
log10f() |
log10l() |
log1p() |
log1pf() |
log1pl() |
log2() |
log2f() |
log2l() |
logb() |
logbf() |
logbl() |
logf() |
logl() |
lrint() |
lrintf() |
lrintl() |
lround() |
lroundf() |
lroundl() |
modf() |
modff() |
modfl() |
nan() |
nanf() |
nanl() |
nearbyint() |
nearbyintf() |
nearbyintl() |
nextafter() |
nextafterf() |
nextafterl() |
nexttoward() |
nexttowardf() |
nexttowardl() |
pow() |
powf() |
powl() |
remainder() |
remainderf() |
remainderl() |
remquo() |
remquof() |
remquol() |
rint() |
rintf() |
rintl() |
round() |
roundf() |
roundl() |
scalbln() |
scalblnf() |
scalblnl() |
scalbn() |
scalbnf() |
scalbnl() |
signbit() |
sin() |
sinf() |
sinh() |
sinhf() |
sinhl() |
sinl() |
sqrt() |
sqrtf() |
sqrtl() |
tan() |
tanf() |
tanh() |
tanhf() |
tanhl() |
tanl() |
tgamma() |
tgammaf() |
tgammal() |
trunc() |
truncf() |
truncl() |
NuttX supports different libm
implementations with different
sets of supported functions. libm
support in NuttX is controlled
by Kconfig choice option.
POSIX_FD_MGMT
File Descriptor Management:
API |
Support |
---|---|
Yes |
|
Yes |
|
|
Yes |
Yes |
|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
Yes |
|
|
Yes |
POSIX_FILE_SYSTEM
File System:
API |
Support |
---|---|
|
Yes |
|
Yes |
Yes |
|
Yes |
|
|
Yes |
|
Yes |
Yes |
|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
Yes |
|
|
Yes |
Yes |
|
Yes |
|
|
Yes |
posix_getdents() |
No |
Yes |
|
|
Yes |
Yes |
|
Yes |
|
Yes |
|
Yes |
|
|
Yes |
|
Yes |
|
Yes |
Yes |
|
Yes |
POSIX_MULTI_PROCESS
Multiple Processes:
API |
Support |
---|---|
|
Yes |
_Fork() |
No |
Yes |
|
|
Yes |
|
Yes |
Yes |
|
|
Yes |
Yes |
|
|
Yes |
|
Yes |
Yes |
|
|
Yes |
|
Yes |
Yes |
|
fork() |
No |
|
Yes |
|
Yes |
Yes |
|
|
Yes |
|
Yes |
getsid() |
No |
|
Yes |
|
Yes |
setsid() |
No |
|
Yes |
|
Yes |
Yes |
|
Yes |
|
Yes |
POSIX_NETWORKING
Networking:
API |
Support |
---|---|
Yes |
|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
Yes |
|
Yes |
|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
Yes |
|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
Yes |
|
|
Yes |
|
Yes |
Yes |
|
Yes |
|
|
Yes |
Yes |
|
|
Yes |
Yes |
|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
Yes |
|
|
Yes |
Yes |
|
|
Yes |
|
Yes |
POSIX_PIPE
Pipe:
API |
Support |
---|---|
Yes |
|
|
Yes |
POSIX_SIGNAL_JUMP
Signal Jump Functions:
API |
Support |
---|---|
siglongjmp() |
No |
sigsetjmp() |
No |
POSIX_C_LANG_WIDE_CHAR
Wide-Character ISO C Library:
API |
Support |
---|---|
btowc() |
Yes |
iswalnum() |
Yes |
iswalpha() |
Yes |
iswblank() |
Yes |
iswcntrl() |
Yes |
iswctype() |
Yes |
iswdigit() |
Yes |
iswgraph() |
Yes |
iswlower() |
Yes |
iswprint() |
Yes |
iswpunct() |
Yes |
iswspace() |
Yes |
iswupper() |
Yes |
iswxdigit() |
Yes |
mblen() |
Yes |
mbrlen() |
Yes |
mbrtowc() |
Yes |
mbsinit() |
Yes |
mbsrtowcs() |
Yes |
mbstowcs() |
Yes |
mbtowc() |
Yes |
swprintf() |
Yes |
swscanf() |
Yes |
towctrans() |
Yes |
towlower() |
Yes |
towupper() |
Yes |
vswprintf() |
Yes |
vswscanf() |
Yes |
wcrtomb() |
Yes |
wcscat() |
Yes |
wcschr() |
Yes |
wcscmp() |
Yes |
wcscoll() |
Yes |
wcscpy() |
Yes |
wcscspn() |
Yes |
wcsftime() |
Yes |
wcslen() |
Yes |
wcsncat() |
Yes |
wcsncmp() |
Yes |
wcsncpy() |
Yes |
wcspbrk() |
Yes |
wcsrchr() |
Yes |
wcsrtombs() |
Yes |
wcsspn() |
Yes |
wcsstr() |
Yes |
wcstod() |
Yes |
wcstof() |
Yes |
wcstoimax() |
Yes |
wcstok() |
Yes |
wcstol() |
Yes |
wcstold() |
Yes |
wcstoll() |
Yes |
wcstombs() |
Yes |
wcstoul() |
Yes |
wcstoull() |
Yes |
wcstoumax() |
Yes |
wcsxfrm() |
Yes |
wctob() |
Yes |
wctomb() |
Yes |
wctrans() |
Yes |
wctype() |
Yes |
wmemchr() |
Yes |
wmemcmp() |
Yes |
wmemcpy() |
Yes |
wmemmove() |
Yes |
wmemset() |
Yes |
POSIX_DEVICE_SPECIFIC
General Terminal:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
ctermid() |
No |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
tcgetwinsize() |
No |
|
Yes |
|
Yes |
tcsetwinsize() |
No |
|
Yes |
POSIX_FIFO
FIFO:
API |
Support |
---|---|
Yes |
POSIX_FILE_ATTRIBUTES
File Attributes:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
POSIX_FILE_SYSTEM_EXT
File System Extensions:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
POSIX_JOB_CONTROL
Job Control:
API |
Support |
---|---|
setpgid() |
No |
tcgetpgrp() |
No |
tcsetpgrp() |
No |
|
Yes |
POSIX_REGEXP
Regular Expressions:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
POSIX_SHELL_FUNC
Shell and Utilities:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
wordexp() |
No |
wordfree() |
No |
POSIX_STRING_MATCHING
API |
Support |
---|---|
|
Yes |
|
Yes |
optarg |
Yes |
optind |
Yes |
opterr |
Yes |
optopt |
Yes |
POSIX_SYMBOLIC_LINKS
Symbolic Links:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
POSIX_SYSTEM_DATABASE
System Database:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
POSIX_USER_GROUPS
User and Group:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
getgroups() |
No |
getlogin() |
No |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
POSIX_WIDE_CHAR_DEVICE_IO
Device Input and Output:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
open_wmemstream() |
No |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
XSI_C_LANG_SUPPORT
XSI General C Library:
API |
Support |
---|---|
a64l() |
No |
daylight |
No |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
getdate() |
No |
|
Yes |
|
Yes |
|
Yes |
initstate() |
No |
insque() |
No |
|
Yes |
l64a() |
No |
|
Yes |
lfind() |
No |
|
Yes |
lsearch() |
No |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
remque() |
No |
|
Yes |
setstate() |
No |
signgam |
No |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
tdelete() |
No |
tfind() |
No |
timezone |
No |
tsearch() |
No |
twalk() |
No |
XSI_DBM
XSI Database Management:
API |
Support |
---|---|
dbm_clearerr() |
No |
dbm_close() |
No |
dbm_delete() |
No |
dbm_error() |
No |
dbm_fetch() |
No |
dbm_firstkey() |
No |
dbm_nextkey() |
No |
dbm_open() |
No |
dbm_store() |
No |
XSI_DEVICE_IO
XSI Device Input and Output:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
XSI_DEVICE_SPECIFIC
XSI General Terminal:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
XSI_DYNAMIC_LINKING
Dynamic Linking:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
XSI_FD_MGMT
XSI File Descriptor Management:
API |
Support |
---|---|
Yes |
XSI_FILE_SYSTEM
XSI File System:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
Yes |
|
Yes |
|
Yes |
|
|
Yes |
XSI_I18N
XSI Internationalization:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
XSI_IPC
XSI Interprocess Communication:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
No |
|
No |
|
No |
Yes |
|
Yes |
|
Yes |
|
Yes |
XSI_JOB_CONTROL
XSI Job Control:
API |
Support |
---|---|
|
Yes |
XSI_JUMP
XSI Jump Functions:
API |
Support |
---|---|
|
Yes |
|
Yes |
XSI_MATH
Depends on the enabled libm
implementation [12].
XSI Maths Library:
API |
---|
j0() |
j1() |
jn() |
scalb() |
y0() |
y1() |
yn() |
NuttX supports different libm
implementations with different
sets of supported functions. libm
support in NuttX is controlled
by Kconfig choice option.
XSI_MULTI_PROCESS
XSI Multiple Process:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
getsid() |
No |
|
Yes |
setpgrp() |
No |
|
Yes |
|
Yes |
ulimit() |
No |
|
Yes |
Yes |
|
Yes |
XSI_SIGNALS
XSI Signal:
API |
Support |
---|---|
bsd_signal() |
No |
|
Yes |
|
Yes |
Yes |
|
Yes |
|
|
Yes |
Yes |
|
Yes |
|
Yes |
|
ualarm() |
No |
XSI_SINGLE_PROCESS
XSI Single Process:
API |
Support |
---|---|
gethostid() |
No |
Yes |
|
Yes |
XSI_SYSTEM_DATABASE
XSI System Database:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
XSI_SYSTEM_LOGGING
XSI System Logging:
API |
Support |
---|---|
|
No |
|
No |
Yes |
|
Yes |
XSI_THREADS_EXT
XSI Threads Extensions:
API |
Support |
---|---|
|
Yes |
|
Yes |
pthread_getconcurrency() |
No |
pthread_setconcurrency() |
No |
XSI_TIMERS
XSI Timers:
API |
Support |
---|---|
|
Yes |
|
Yes |
XSI_USER_GROUPS
XSI User and Group:
API |
Support |
---|---|
endgrent() |
No |
endutxent() |
No |
getgrent() |
No |
getutxent() |
No |
getutxid() |
No |
getutxline() |
No |
pututxline() |
No |
setgrent() |
No |
|
Yes |
|
Yes |
setutxent() |
No |
XSI_WIDE_CHAR
XSI Wide-Character Library:
API |
Support |
---|---|
|
Yes |
|
Yes |
POSIX.1 Option Requirements
_POSIX_CLOCK_SELECTION
Clock Selection:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
_POSIX_FSYNC
File Synchronization:
API |
Support |
---|---|
|
Yes |
Revisit: why #undef _POSIX_FSYNC
in unistd.h
?
_POSIX_IPV6
No functions under this option.
_POSIX_MEMLOCK
API |
Support |
---|---|
|
Dummy [14] |
|
Dummy [14] |
The function returns a success value but doesn’t implement the requred functionality.
_POSIX_MEMLOCK_RANGE
API |
Support |
---|---|
|
Dummy [15] |
|
Dummy [15] |
The function returns a success value but doesn’t implement the requred functionality.
_POSIX_MONOTONIC_CLOCK
No functions under this option.
_POSIX_NO_TRUNC
No functions under this option.
_POSIX_REALTIME_SIGNALS
Realtime Signals:
API |
Support |
---|---|
Yes |
|
Yes |
|
Yes |
_POSIX_SEMAPHORES
Semaphores:
API |
Support |
---|---|
|
Yes |
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
_POSIX_SYNCHRONIZED_IO
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
_POSIX_THREAD_ATTR_STACKADDR
API |
Support |
---|---|
|
Yes |
|
Yes |
_POSIX_THREAD_ATTR_STACKSIZE
API |
Support |
---|---|
Yes |
|
Yes |
_POSIX_THREAD_CPUTIME
API |
Support |
---|---|
CLOCK_THREAD_CPUTIME_ID |
Yes |
|
Yes |
_POSIX_THREAD_PRIO_INHERIT
API |
Support |
---|---|
Yes |
|
Yes |
_POSIX_THREAD_PRIO_PROTECT
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
Yes |
|
|
Yes |
Yes |
_POSIX_THREAD_PRIORITY_SCHEDULING
API |
Support |
---|---|
Yes |
|
Yes |
|
|
Yes |
Yes |
|
Yes |
|
|
Yes |
Yes |
|
Yes |
|
|
Yes |
_POSIX_THREAD_SPORADIC_SERVER
No functions under this option.
_POSIX_TIMEOUTS
API |
Support |
---|---|
Yes |
|
Yes |
|
Yes |
|
|
Yes |
|
Yes |
Yes |
|
posix_trace_timedgetnext_event() [16] |
No |
_POSIX_TRACE*
are obsolete.
_POSIX_TIMERS
Depends on !CONFIG_DISABLE_POSIX_TIMERS
Timers:
API |
Support |
---|---|
Yes |
|
Yes |
|
Yes |
|
|
Yes |
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
_POSIX_MAPPED_FILES
Memory Mapped Files:
API |
Support |
---|---|
Yes |
|
|
Yes |
_POSIX_MESSAGE_PASSING
API |
Support |
---|---|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
_POSIX_ASYNCHRONOUS_IO
Depends on CONFIG_FS_AIO
.
Asynchronous Input and Output Functions:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
_POSIX_BARRIERS
API |
Support |
---|---|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
_POSIX_CPUTIME
API |
Support |
---|---|
|
Yes |
_POSIX_MEMORY_PROTECTION
API |
Support |
---|---|
|
Dummy [17] |
The function returns a success value but doesn’t implement the requred functionality.
_POSIX_PRIORITIZED_IO
No functions under this option.
_POSIX_PRIORITY_SCHEDULING
API |
Support |
---|---|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
_POSIX_RAW_SOCKETS
No functions under this option.
_POSIX_SPAWN
Depends on CONFIG_BUILD_KERNEL
.
API |
Support |
---|---|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
|
Yes |
Yes |
|
|
No |
|
No |
Yes |
|
Yes |
|
Yes |
|
|
No |
|
No |
Yes |
|
Yes |
_POSIX_SPIN_LOCKS
Depends on CONFIG_PTHREAD_SPINLOCKS
.
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
_POSIX_SPORADIC_SERVER
No functions under this option.
_POSIX_ADVISORY_INFO
API |
Support |
---|---|
posix_fadvise() |
No |
|
Yes |
|
Yes |
posix_madvise() |
Empty |
_POSIX_SAVED_IDS
No functions under this option.
_POSIX_VDISABLE
No functions under this option.
_POSIX2_CHAR_TERM
No utilities under this option.
_POSIX2_FORT_DEV
API |
Support |
---|---|
fort77 |
No |
_POSIX2_FORT_RUN
API |
Support |
---|---|
asa |
No |
_POSIX2_LOCALEDEF
No utilities under this option.
_POSIX2_PBS
API |
Support |
---|---|
qalter |
No |
qdel |
No |
qhold |
No |
qmove |
No |
qmsg |
No |
qrerun |
No |
qrls |
No |
qselect |
No |
qsig |
No |
qstat |
No |
qsub |
No |
_POSIX2_PBS_ACCOUNTING
No utilities under this option.
_POSIX2_PBS_CHECKPOINT
No utilities under this option.
_POSIX2_PBS_LOCATE
No utilities under this option.
_POSIX2_PBS_MESSAGE
No utilities under this option.
_POSIX2_PBS_TRACK
No utilities under this option.
_POSIX2_UPE
API |
Support |
---|---|
nm |
No |
_XOPEN_CRYPT
Depends on CONFIG_CRYPTO
;
API |
Support |
---|---|
|
Yes |
encrypt() |
No |
setkey() |
No |
_XOPEN_ENH_I18N
No interfaces fall under this option.
_XOPEN_LEGACY
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
ecvt() |
No |
fcvt() |
No |
ftime() |
No |
gcvt() |
No |
getwd() |
No |
index() |
No |
Yes |
|
|
Yes |
|
Yes |
|
Yes |
_XOPEN_STREAMS
API |
Support |
---|---|
fattach() |
No |
fdetach() |
No |
getmsg() |
No |
getpmsg() |
No |
Yes |
|
isastream() |
No |
putmsg() |
No |
putpmsg() |
No |
POSIX_BARRIERS
API |
Support |
---|---|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
POSIX_RW_LOCKS
Reader Writer Locks:
API |
Support |
---|---|
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
|
Yes |
_POSIX2_C_DEV
API |
Support |
---|---|
c99 |
No |
lex |
No |
yacc |
No |
_POSIX2_SW_DEV
API |
Support |
---|---|
ar |
No |
make |
No |
strip |
No |
nm |
No |
References
IEEE Std 1003.13, 2003 - Standardized Application Environment Profile (AEP)—POSIX® Realtime and Embedded Application Support