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

POSIX_C_LANG_JUMP

Yes

POSIX_C_LANG_SUPPORT

94/105 [1]

POSIX_DEVICE_IO

Yes

POSIX_FILE_LOCKING

Yes

POSIX_SINGLE_PROCESS

7/9

POSIX_THREADS_BASE

Yes

POSIX_THREADS_EXT [2]

2/4

XSI_THREADS_EXT

2/4

POSIX.1 Option Requirements:

Symbol

Support

Remarks

_POSIX_CLOCK_SELECTION

Yes

_POSIX_FSYNC

Yes

_POSIX_MEMLOCK

Yes [3]

_POSIX_MEMLOCK_RANGE

Yes [3]

_POSIX_MONOTONIC_CLOCK

Yes

_POSIX_NO_TRUNC

No

_POSIX_REALTIME_SIGNALS

201712L

_POSIX_SEMAPHORES

201712L

_POSIX_SHARED_MEMORY_OBJECTS

201712L

_POSIX_SYNCHRONIZED_IO

Yes

_POSIX_THREAD_ATTR_STACKADDR

Yes

_POSIX_THREAD_ATTR_STACKSIZE

Yes

_POSIX_THREAD_CPUTIME

201712L

_POSIX_THREAD_PRIO_INHERIT

Yes

CONFIG_PRIORITY_INHERITANCE

_POSIX_THREAD_PRIO_PROTECT

Yes

CONFIG_PRIORITY_PROTECT

_POSIX_THREAD_PRIORITY_SCHEDULING

201712L

_POSIX_THREAD_SPORADIC_SERVER

Yes

CONFIG_SCHED_SPORADIC

_POSIX_TIMEOUTS [4]

Yes

_POSIX_TIMERS

Yes

!CONFIG_DISABLE_POSIX_TIMERS

_POSIX2_C_DEV

Yes [5]

_POSIX2_SW_DEV

Yes [5]

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

POSIX_C_LANG_MATH

Yes [6]

CONFIG_LIBM_XXX

POSIX_FD_MGMT

Yes

POSIX_FILE_SYSTEM

Yes

POSIX.1 Option Requirements

Symbol

Support

Remarks

_POSIX_MAPPED_FILES

201712L

_POSIX_MESSAGE_PASSING

Yes

!CONFIG_DISABLE_MQUEUE

_POSIX_TRACE [7]

No

_POSIX_TRACE_EVENT_FILTER [7]

No

_POSIX_TRACE_LOG [7]

No

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

POSIX_MULTI_PROCESS

25/29

POSIX_NETWORKING

Yes

CONFIG_NET

POSIX_PIPE

Yes

CONFIG_PIPES

POSIX_SIGNAL_JUMP

No

POSIX.1 Option Requirements

Symbol

Support

Remarks

_POSIX_ASYNCHRONOUS_IO

201712L

CONFIG_FS_AIO

_POSIX_CPUTIME

201712L

_POSIX_MEMORY_PROTECTION

Yes [9]

_POSIX_PRIORITIZED_IO

201712L

_POSIX_PRIORITY_SCHEDULING

Yes

_POSIX_RAW_SOCKETS

Yes

_POSIX_SPAWN

13/17

CONFIG_BUILD_KERNEL

_POSIX_SPORADIC_SERVER

Yes

CONFIG_SCHED_SPORADIC

_POSIX_THREAD_PROCESS_SHARED

201712L

POSIX PSE54 - Multipurpose

The Multipurpose Realtime System Profile (PSE54) includes all features from PSE53, PSE52 and PSE51.

Units of Functionality Requirements:

Symbol

Support

Remarks

POSIX_C_LANG_WIDE_CHAR

POSIX_DEVICE_SPECIFIC

3/15

CONFIG_TERMIOS=y

POSIX_FIFO

Yes

CONFIG_DEV_FIFO_SIZE > 0

POSIX_FILE_ATTRIBUTES

Yes

CONFIG_PSEUDOFS_ATTRIBUTES

POSIX_FILE_SYSTEM_EXT

Yes

POSIX_JOB_CONTROL

1/4

POSIX_REGEXP

Yes

POSIX_SHELL_FUNC

3/5

POSIX_STRING_MATCHING

Yes

POSIX_SYMBOLIC_LINKS

Yes

CONFIG_PSEUDOFS_SOFTLINKS

POSIX_SYSTEM_DATABASE

Yes

POSIX_USER_GROUPS

8/10

POSIX_WIDE_CHAR_IO [10]

XSI_DYNAMIC_LINKING

Yes

XSI_SYSTEM_LOGGING

1/4

POSIX.1 Option Requirements

Symbol

Support

Remarks

_POSIX_ADVISORY_INFO

2/4

_POSIX_SAVED_IDS

No

_POSIX_VDISABLE

No

_POSIX2_CHAR_TERM

?

_POSIX2_FORT_RUN

No

_POSIX2_UPE

No

Functionality Requirements

POSIX_C_LANG_JUMP

API

Support

longjmp()

Yes

setjmp()

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

FD_CLR()

Yes

FD_ISSET()

Yes

FD_SET()

Yes

FD_ZERO()

Yes

clearerr()

Yes

close()

Yes

fclose()

Yes

fdopen()

Yes

feof()

Yes

ferror()

Yes

flush()

Yes

fgetc()

Yes

fgets()

Yes

fileno()

Yes

fopen()

Yes

fprintf()

Yes

fputc()

Yes

fputs()

Yes

fread()

Yes

freopen()

Yes

fscanf()

Yes

fwrite()

Yes

getc()

Yes

getchar()

Yes

open()

Yes

perror()

Yes

poll()

Yes

posix_close()

No

ppoll()

Yes

printf()

Yes

pread()

Yes

pselect()

Yes

putc()

Yes

putchar()

Yes

puts()

Yes

pwrite()

Yes

read()

Yes

scanf()

Yes

select()

Yes

setbuf()

Yes

setvbuf()

Yes

stderr

Yes

stdin

Yes

stdout

Yes

ungetc()

Yes

vfprintf()

Yes

vfscanf()

Yes

vprintf()

Yes

vscanf()

Yes

write()

Yes

POSIX_FILE_LOCKING

Thread-Safe Stdio Locking:

API

Support

flockfile()

Yes

ftrylockfile()

Yes

funlockfile()

Yes

getc_unlocked()

Yes

getchar_unlocked()

Yes

putc_unlocked()

Yes

putchar_unlocked()

Yes

POSIX_SINGLE_PROCESS

Single Process:

API

Support

confstr()

No

environ

Yes

errno

Yes

getenv()

Yes

secure_getenv()

No

setenv()

Yes

sysconf()

Yes

uname()

Yes

unsetenv()

Yes

POSIX_THREADS_BASE

Base Threads:

API

Support

pthread_atfork()

Yes

pthread_attr_destroy()

Yes

pthread_attr_getdetachstate()

Yes

pthread_attr_getschedparam()

Yes

pthread_attr_init()

Yes

pthread_attr_setdetachstate()

Yes

pthread_attr_setschedparam()

Yes

pthread_cancel()

Yes

pthread_cleanup_pop()

Yes

pthread_cleanup_push()

Yes

pthread_cond_broadcast()

Yes

pthread_cond_clockwait()

Yes

pthread_cond_destroy()

Yes

pthread_cond_init()

Yes

pthread_cond_signal()

Yes

pthread_cond_timedwait()

Yes

pthread_cond_wait()

Yes

pthread_condattr_destroy()

Yes

pthread_condattr_init()

Yes

pthread_create()

Yes

pthread_detach()

Yes

pthread_equal()

Yes

pthread_exit()

Yes

pthread_getspecific()

Yes

pthread_join()

Yes

pthread_key_create()

Yes

pthread_key_delete()

Yes

pthread_kill()

Yes

pthread_mutex_clocklock()

Yes

pthread_mutex_destroy()

Yes

pthread_mutex_init()

Yes

pthread_mutex_lock()

Yes

pthread_mutex_timedlock()

Yes

pthread_mutex_trylock()

Yes

pthread_mutex_unlock()

Yes

pthread_mutexattr_destroy()

Yes

pthread_mutexattr_init()

Yes

pthread_once()

Yes

pthread_self()

Yes

pthread_setcancelstate()

Yes

pthread_setcanceltype()

Yes

pthread_setspecific()

Yes

pthread_sigmask()

Yes

pthread_testcancel()

Yes

sched_yield()

Yes

POSIX_THREADS_EXT

Extended Threads:

API

Support

pthread_attr_getguardsize()

No

pthread_attr_setguardsize()

No

pthread_mutexattr_gettype()

Yes

pthread_mutexattr_settype()

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()

POSIX_FD_MGMT

File Descriptor Management:

API

Support

dup()

Yes

dup2()

Yes

dup3()

Yes

fcntl()

Yes

fgetpos()

Yes

fseek()

Yes

fseeko()

Yes

fsetpos()

Yes

ftell()

Yes

ftello()

Yes

ftruncate()

Yes

lseek()

Yes

rewind()

Yes

POSIX_FILE_SYSTEM

File System:

API

Support

access()

Yes

chdir()

Yes

closedir()

Yes

creat()

Yes

fchdir()

Yes

fpathconf()

Yes

fstat()

Yes

fstatvfs()

Yes

futimens()

Yes

getcwd()

Yes

link()

Yes

mkdir()

Yes

mkostemp()

Yes

mkstemp()

Yes

opendir()

Yes

pathconf()

Yes

posix_getdents()

No

readdir()

Yes

remove()

Yes

rename()

Yes

rewinddir()

Yes

rmdir()

Yes

stat()

Yes

statvfs()

Yes

tmpfile()

Yes

tmpnam()

Yes

truncate()

Yes

unlink()

Yes

POSIX_MULTI_PROCESS

Multiple Processes:

API

Support

_Exit()

Yes

_Fork()

No

_exit()

Yes

assert()

Yes

at_quick_exit()

Yes

atexit()

Yes

clock()

Yes

execl()

Yes

execle()

Yes

execlp()

Yes

execv()

Yes

execve()

Yes

execvp()

Yes

exit()

Yes

fork()

No

getpgrp()

Yes

getpgid()

Yes

getpid()

Yes

getppid()

Yes

getrlimit()

Yes

getsid()

No

quick_exit()

Yes

setrlimit()

Yes

setsid()

No

sleep()

Yes

times()

Yes

wait()

Yes

waitid()

Yes

waitpid()

Yes

POSIX_NETWORKING

Networking:

API

Support

accept()

Yes

accept4()

Yes

be16toh()

Yes

be32toh()

Yes

be64toh()

Yes

bind()

Yes

connect()

Yes

endhostent()

Yes

endnetent()

Yes

endprotoent()

Yes

endservent()

Yes

freeaddrinfo()

Yes

gai_strerror()

Yes

getaddrinfo()

Yes

gethostent()

Yes

gethostname()

Yes

getnameinfo()

Yes

getnetbyaddr()

Yes

getnetbyname()

Yes

getnetent()

Yes

getpeername()

Yes

getprotobyname()

Yes

getprotobynumber()

Yes

getprotoent()

Yes

getservbyname()

Yes

getservbyport()

Yes

getservent()

Yes

getsockname()

Yes

getsockopt()

Yes

htobe16()

Yes

htobe32()

Yes

htobe64()

Yes

htole16()

Yes

htole32()

Yes

htole64()

Yes

htonl()

Yes

htons()

Yes

if_freenameindex()

Yes

if_indextoname()

Yes

if_nameindex()

Yes

if_nametoindex()

Yes

inet_addr()

Yes

inet_ntoa()

Yes

inet_ntop()

Yes

inet_pton()

Yes

le16toh()

Yes

le32toh()

Yes

le64toh()

Yes

listen()

Yes

ntohl()

Yes

ntohs()

Yes

recv()

Yes

recvfrom()

Yes

recvmsg()

Yes

send()

Yes

sendmsg()

Yes

sendto()

Yes

sethostent()

Yes

setnetent()

Yes

setprotoent()

Yes

setservent()

Yes

setsockopt()

Yes

shutdown()

Yes

socket()

Yes

sockatmark()

Yes

socketpair()

Yes

POSIX_PIPE

Pipe:

API

Support

pipe()

Yes

pipe2()

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

cfgetispeed()

Yes

cfgetospeed()

Yes

cfsetispeed()

Yes

cfsetospeed()

Yes

ctermid()

No

isatty()

Yes

tcdrain()

Yes

tcflow()

Yes

tcflush()

Yes

tcgetattr()

Yes

tcgetwinsize()

No

tcsendbreak()

Yes

tcsetattr()

Yes

tcsetwinsize()

No

ttyname()

Yes

POSIX_FIFO

FIFO:

API

Support

mkfifo()

Yes

POSIX_FILE_ATTRIBUTES

File Attributes:

API

Support

chmod()

Yes

chown()

Yes

fchmod()

Yes

fchown()

Yes

umask()

Yes

POSIX_FILE_SYSTEM_EXT

File System Extensions:

API

Support

alphasort()

Yes

dirfd()

Yes

getdelim()

Yes

getline()

Yes

mkdtemp()

Yes

scandir()

Yes

POSIX_JOB_CONTROL

Job Control:

API

Support

setpgid()

No

tcgetpgrp()

No

tcsetpgrp()

No

tcgetsid()

Yes

POSIX_REGEXP

Regular Expressions:

API

Support

regcomp()

Yes

regerror()

Yes

regexec()

Yes

regfree()

Yes

POSIX_SHELL_FUNC

Shell and Utilities:

API

Support

pclose()

Yes

popen()

Yes

system()

Yes

wordexp()

No

wordfree()

No

POSIX_STRING_MATCHING

API

Support

fnmatch()

Yes

getopt()

Yes

optarg

Yes

optind

Yes

opterr

Yes

optopt

Yes

POSIX_SYSTEM_DATABASE

System Database:

API

Support

getgrgid()

Yes

getgrnam()

Yes

getpwnam()

Yes

getpwuid()

Yes

POSIX_USER_GROUPS

User and Group:

API

Support

getegid()

Yes

geteuid()

Yes

getgid()

Yes

getgroups()

No

getlogin()

No

getuid()

Yes

setegid()

Yes

seteuid()

Yes

setgid()

Yes

setuid()

Yes

POSIX_WIDE_CHAR_DEVICE_IO

Device Input and Output:

API

Support

fgetwc()

Yes

fgetws()

Yes

fputwc()

Yes

fputws()

Yes

fwide()

Yes

fwprintf()

Yes

fwscanf()

Yes

getwc()

Yes

getwchar()

Yes

open_wmemstream()

No

putwc()

Yes

putwchar()

Yes

ungetwc()

Yes

vfwprintf()

Yes

vfwscanf()

Yes

vwprintf()

Yes

vwscanf()

Yes

wprintf()

Yes

wscanf()

Yes

XSI_C_LANG_SUPPORT

XSI General C Library:

API

Support

a64l()

No

daylight

No

drand48()

Yes

erand48()

Yes

ffs()

Yes

ffsl()

Yes

ffsll()

Yes

getdate()

No

hcreate()

Yes

hdestroy()

Yes

hsearch()

Yes

initstate()

No

insque()

No

jrand48()

Yes

l64a()

No

lcong48()

Yes

lfind()

No

lrand48()

Yes

lsearch()

No

memccpy()

Yes

mrand48()

Yes

nrand48()

Yes

random()

Yes

remque()

No

seed48()

Yes

setstate()

No

signgam

No

srand48()

Yes

srandom()

Yes

strptime()

Yes

swab()

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

fmtmsg()

Yes

readv()

Yes

writev()

Yes

XSI_DEVICE_SPECIFIC

XSI General Terminal:

API

Support

grantpt()

Yes

posix_openpt()

Yes

ptsname()

Yes

unlockpt()

Yes

XSI_DYNAMIC_LINKING

Dynamic Linking:

API

Support

dladdr()

Yes

dlclose()

Yes

dlerror()

Yes

dlopen()

Yes

dlsym()

Yes

XSI_FD_MGMT

XSI File Descriptor Management:

API

Support

truncate()

Yes

XSI_FILE_SYSTEM

XSI File System:

API

Support

basename()

Yes

dirname()

Yes

lockf()

Yes

mknod()

Yes

nftw()

Yes

seekdir()

Yes

sync()

Yes

telldir()

Yes

utimes()

Yes

XSI_I18N

XSI Internationalization:

API

Support

catclose()

Yes

catgets()

Yes

catopen()

Yes

nl_langinfo()

Yes

XSI_IPC

XSI Interprocess Communication:

API

Support

ftok()

Yes

msgctl()

Yes

msgget()

Yes

msgrcv()

Yes

msgsnd()

Yes

semctl()

No

semget()

No

semop()

No

shmat()

Yes

shmctl()

Yes

shmdt()

Yes

shmget()

Yes

XSI_JOB_CONTROL

XSI Job Control:

API

Support

tcgetsid()

Yes

XSI_JUMP

XSI Jump Functions:

API

Support

_longjmp()

Yes

_setjmp()

Yes

XSI_MATH

Depends on the enabled libm implementation [12].

XSI Maths Library:

API

j0()

j1()

jn()

scalb()

y0()

y1()

yn()

XSI_MULTI_PROCESS

XSI Multiple Process:

API

Support

getpgid()

Yes

getpriority()

Yes

getrlimit()

Yes

getrusage()

Yes

getsid()

No

nice()

Yes

setpgrp()

No

setpriority()

Yes

setrlimit()

Yes

ulimit()

No

usleep()

Yes

vfork()

Yes

waitid()

Yes

XSI_SIGNALS

XSI Signal:

API

Support

bsd_signal()

No

killpg()

Yes

sigaltstack()

Yes

sighold()

Yes

sigignore()

Yes

siginterrupt()

Yes

sigpause()

Yes

sigrelse()

Yes

sigset()

Yes

ualarm()

No

XSI_SINGLE_PROCESS

XSI Single Process:

API

Support

gethostid()

No

gettimeofday()

Yes

putenv()

Yes

XSI_SYSTEM_DATABASE

XSI System Database:

API

Support

endpwent()

Yes

getpwent()

Yes

setpwent()

Yes

XSI_SYSTEM_LOGGING

XSI System Logging:

API

Support

closelog()

No

openlog()

No

setlogmask()

Yes

syslog()

Yes

XSI_THREADS_EXT

XSI Threads Extensions:

API

Support

pthread_attr_getstack()

Yes

pthread_attr_setstack()

Yes

pthread_getconcurrency()

No

pthread_setconcurrency()

No

XSI_TIMERS

XSI Timers:

API

Support

getitimer()

Yes

setitimer()

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

setregid()

Yes

setreuid()

Yes

setutxent()

No

XSI_WIDE_CHAR

XSI Wide-Character Library:

API

Support

wcswidth()

Yes

wcwidth()

Yes

POSIX.1 Option Requirements

_POSIX_CLOCK_SELECTION

Clock Selection:

API

Support

clock_nanosleep()

Yes

pthread_condattr_getclock()

Yes

pthread_condattr_setclock()

Yes

_POSIX_FSYNC

File Synchronization:

API

Support

fsync() [13]

Yes

_POSIX_IPV6

No functions under this option.

_POSIX_MEMLOCK

API

Support

mlockall()

Dummy [14]

munlockall()

Dummy [14]

_POSIX_MEMLOCK_RANGE

API

Support

mlock()

Dummy [15]

munlock()

Dummy [15]

_POSIX_MONOTONIC_CLOCK

No functions under this option.

_POSIX_NO_TRUNC

No functions under this option.

_POSIX_REALTIME_SIGNALS

Realtime Signals:

API

Support

sigqueue()

Yes

sigtimedwait()

Yes

sigwaitinfo()

Yes

_POSIX_SEMAPHORES

Semaphores:

API

Support

sem_clockwait()

Yes

sem_close()

Yes

sem_destroy()

Yes

sem_getvalue()

Yes

sem_init()

Yes

sem_open()

Yes

sem_post()

Yes

sem_timedwait()

Yes

sem_trywait()

Yes

sem_unlink()

Yes

sem_wait()

Yes

_POSIX_SHARED_MEMORY_OBJECTS

API

Support

mmap()

Yes

munmap()

Yes

shm_open()

Yes

shm_unling()

No

_POSIX_SYNCHRONIZED_IO

API

Support

fdatasync()

Yes

fsync()

Yes

msync()

Yes

_POSIX_THREAD_ATTR_STACKADDR

API

Support

pthread_attr_getstackaddr()

Yes

pthread_attr_setstackaddr()

Yes

_POSIX_THREAD_ATTR_STACKSIZE

API

Support

pthread_attr_getstacksize()

Yes

pthread_attr_setstacksize()

Yes

_POSIX_THREAD_CPUTIME

API

Support

CLOCK_THREAD_CPUTIME_ID

Yes

pthread_getcpuclockid()

Yes

_POSIX_THREAD_PRIO_INHERIT

API

Support

pthread_mutexattr_getprotocol()

Yes

pthread_mutexattr_setprotocol()

Yes

_POSIX_THREAD_PRIO_PROTECT

API

Support

pthread_mutex_getprioceiling()

Yes

pthread_mutex_setprioceiling()

Yes

pthread_mutexattr_getprioceiling()

Yes

pthread_mutexattr_getprotocol()

Yes

pthread_mutexattr_setprioceiling()

Yes

pthread_mutexattr_setprotocol()

Yes

_POSIX_THREAD_PRIORITY_SCHEDULING

API

Support

pthread_attr_getinheritsched()

Yes

pthread_attr_getschedpolicy()

Yes

pthread_attr_getscope()

Yes

pthread_attr_setinheritsched()

Yes

pthread_attr_setschedpolicy()

Yes

pthread_attr_setscope()

Yes

pthread_getschedparam()

Yes

pthread_setschedparam()

Yes

pthread_setschedprio()

Yes

_POSIX_THREAD_SPORADIC_SERVER

No functions under this option.

_POSIX_TIMEOUTS

API

Support

mq_timedreceive()

Yes

mq_timedsend()

Yes

pthread_mutex_timedlock()

Yes

pthread_rwlock_timedrdlock()

Yes

pthread_rwlock_timedwrlock()

Yes

sem_timedwait()

Yes

posix_trace_timedgetnext_event() [16]

No

_POSIX_TIMERS

Depends on !CONFIG_DISABLE_POSIX_TIMERS

Timers:

API

Support

clock_getres()

Yes

clock_gettime()

Yes

clock_settime()

Yes

nanosleep()

Yes

timer_create()

Yes

timer_delete()

Yes

timer_getoverrun()

Yes

timer_gettime()

Yes

timer_settime()

Yes

_POSIX_MAPPED_FILES

Memory Mapped Files:

API

Support

mmap()

Yes

munmap()

Yes

_POSIX_MESSAGE_PASSING

API

Support

mq_close()

Yes

mq_getattr()

Yes

mq_notify()

Yes

mq_open()

Yes

mq_receive()

Yes

mq_send()

Yes

mq_setattr()

Yes

mq_unlink()

Yes

_POSIX_ASYNCHRONOUS_IO

Depends on CONFIG_FS_AIO.

Asynchronous Input and Output Functions:

API

Support

aio_cancel()

Yes

aio_error()

Yes

aio_fsync()

Yes

aio_read()

Yes

aio_return()

Yes

aio_suspend()

Yes

aio_write()

Yes

lio_listio()

Yes

_POSIX_BARRIERS

API

Support

pthread_barrier_destroy()

Yes

pthread_barrier_init()

Yes

pthread_barrier_wait()

Yes

pthread_barrierattr_destroy()

Yes

pthread_barrierattr_init()

Yes

pthread_barrierattr_getpshared()

Yes

pthread_barrierattr_setpshared()

Yes

pthread_barrierattr_getpshared()

Yes

pthread_barrierattr_setpshared()

Yes

_POSIX_CPUTIME

API

Support

clock_getcpuclockid()

Yes

_POSIX_MEMORY_PROTECTION

API

Support

mprotect()

Dummy [17]

_POSIX_PRIORITIZED_IO

No functions under this option.

_POSIX_PRIORITY_SCHEDULING

API

Support

sched_get_priority_max()

Yes

sched_get_priority_min()

Yes

sched_getparam()

Yes

sched_getscheduler()

Yes

sched_rr_get_interval()

Yes

sched_setparam()

Yes

sched_setscheduler()

Yes

sched_yield()

Yes

posix_spawnattr_getschedparam()

Yes

posix_spawnattr_setschedparam()

Yes

posix_spawnattr_getschedpolicy()

Yes

posix_spawnattr_setschedpolicy()

Yes

_POSIX_RAW_SOCKETS

No functions under this option.

_POSIX_SPAWN

Depends on CONFIG_BUILD_KERNEL.

API

Support

posix_spawn()

Yes

posix_spawn_file_actions_addclose()

Yes

posix_spawn_file_actions_adddup2()

Yes

posix_spawn_file_actions_addopen()

Yes

posix_spawn_file_actions_destroy()

Yes

posix_spawn_file_actions_init()

Yes

posix_spawnattr_destroy()

Yes

posix_spawnattr_getflags()

Yes

posix_spawnattr_getpgroup()

No

posix_spawnattr_getsigdefault()

No

posix_spawnattr_getsigmask()

Yes

posix_spawnattr_init()

Yes

posix_spawnattr_setflags()

Yes

posix_spawnattr_setpgroup()

No

posix_spawnattr_setsigdefault()

No

posix_spawnattr_setsigmask()

Yes

posix_spawnp()

Yes

_POSIX_SPIN_LOCKS

Depends on CONFIG_PTHREAD_SPINLOCKS.

API

Support

pthread_spin_destroy()

Yes

pthread_spin_init()

Yes

pthread_spin_lock()

Yes

pthread_spin_trylock()

Yes

pthread_spin_unlock()

Yes

_POSIX_SPORADIC_SERVER

No functions under this option.

_POSIX_THREAD_PROCESS_SHARED

API

Support

pthread_condattr_getpshared()

Yes

pthread_condattr_setpshared()

Yes

pthread_mutexattr_getpshared()

Yes

pthread_mutexattr_setpshared()

Yes

pthread_rwlockattr_getpshared()

Yes

pthread_rwlockattr_setpshared()

Yes

pthread_barrierattr_getpshared()

Yes

pthread_barrierattr_setpshared()

Yes

_POSIX_ADVISORY_INFO

API

Support

posix_fadvise()

No

posix_fallocate()

Yes

posix_memalign()

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

crypt()

Yes

encrypt()

No

setkey()

No

_XOPEN_ENH_I18N

No interfaces fall under this option.

_XOPEN_LEGACY

API

Support

bcmp()

Yes

bcopy()

Yes

bzero()

Yes

ecvt()

No

fcvt()

No

ftime()

No

gcvt()

No

getwd()

No

index()

No

mktemp()

Yes

rindex()

Yes

utimes()

Yes

wcswcs()

Yes

_XOPEN_STREAMS

API

Support

fattach()

No

fdetach()

No

getmsg()

No

getpmsg()

No

ioctl()

Yes

isastream()

No

putmsg()

No

putpmsg()

No

POSIX_BARRIERS

API

Support

pthread_barrier_destroy()

Yes

pthread_barrier_init()

Yes

pthread_barrier_wait()

Yes

pthread_barrierattr_destroy()

Yes

pthread_barrierattr_init()

Yes

POSIX_RW_LOCKS

Reader Writer Locks:

API

Support

pthread_rwlock_clockrdlock()

Yes

pthread_rwlock_clockwrlock()

Yes

pthread_rwlock_destroy()

Yes

pthread_rwlock_init()

Yes

pthread_rwlock_rdlock()

Yes

pthread_rwlock_timedrdlock()

Yes

pthread_rwlock_timedwrlock()

Yes

pthread_rwlock_tryrdlock()

Yes

pthread_rwlock_trywrlock()

Yes

pthread_rwlock_unlock()

Yes

pthread_rwlock_wrlock()

Yes

pthread_rwlockattr_destroy()

Yes

pthread_rwlockattr_init()

Yes

pthread_rwlockattr_getpshared()

Yes

pthread_rwlockattr_setpshared()

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