一、POSIX PSE51接口列表
根据IEEE 1003.13-2003,整理了POSIX PSE51接口API(一共286个),每个API支持链接查看。
IEEE POSIX接口online搜索链接:
The Open Group Base Specifications Issue 7, 2018 edition
详细内容参考下面表格:
| SN | Module/_POSIX_宏 | Function | File |
| 1 | POSIX_C_LANG_JUMP(2) | longjmp() | <setjmp.h> |
| 2 | setjmp() | ||
| 3 | POSIX_C_LANG_SUPPORT (105 = 27+13+11+4+14+2+24+6+4) | abs() | <stdlib.h> |
| 4 | atof() | ||
| 5 | atoi() | ||
| 6 | atol() | ||
| 7 | atoll() | ||
| 8 | bsearch() | ||
| 9 | calloc() | ||
| 10 | div() | ||
| 11 | free() | ||
| 12 | labs() | ||
| 13 | ldiv() | ||
| 14 | llabs() | ||
| 15 | lldiv() | ||
| 16 | malloc() | ||
| 17 | mktime() | ||
| 18 | qsort() | ||
| 19 | rand() | ||
| 20 | rand_r() | ||
| 21 | realloc() | ||
| 22 | srand() | ||
| 23 | strtod() | ||
| 24 | strtof() | ||
| 25 | strtol() | ||
| 26 | strtold() | ||
| 27 | strtoll() | ||
| 28 | strtoul() | ||
| 29 | strtoull() | ||
| 30 | asctime() | <time.h> | |
| 31 | asctime_r() | ||
| 32 | ctime() | ||
| 33 | ctime_r() | ||
| 34 | difftime() | ||
| 35 | gmtime() | ||
| 36 | gmtime_r() | ||
| 37 | localtime() | ||
| 38 | localtime_r() | ||
| 39 | strftime() | ||
| 40 | time() | ||
| 41 | tzname | ||
| 42 | tzset() | ||
| 43 | feclearexcept() | <fenv.h> | |
| 44 | fegetenv() | ||
| 45 | fegetexceptflag() | ||
| 46 | fegetround() | ||
| 47 | feholdexcept() | ||
| 48 | feraiseexcept() | ||
| 49 | fesetenv() | ||
| 50 | fesetexceptflag() | ||
| 51 | fesetround() | ||
| 52 | fetestexcept() | ||
| 53 | feupdateenv() | ||
| 54 | imaxabs() | <inttypes.h> | |
| 55 | imaxdiv() | ||
| 56 | strtoimax() | ||
| 57 | strtoumax() | ||
| 58 | isalnum() | <ctype.h> | |
| 59 | isalpha() | ||
| 60 | isblank() | ||
| 61 | iscntrl() | ||
| 62 | isdigit() | ||
| 63 | isgraph() | ||
| 64 | islower() | ||
| 65 | isprint() | ||
| 66 | ispunct() | ||
| 67 | isspace() | ||
| 68 | isupper() | ||
| 69 | isxdigit() | ||
| 70 | tolower() | ||
| 71 | toupper() | ||
| 72 | localeconv() | <locale.h> | |
| 73 | setlocale() | ||
| 74 | memchr() | <string.h> | |
| 75 | memcmp() | ||
| 76 | memcpy() | ||
| 77 | memmove() | ||
| 78 | memset() | ||
| 79 | strcat() | ||
| 80 | strchr() | ||
| 81 | strcmp() | ||
| 82 | strcoll() | ||
| 83 | strcpy() | ||
| 84 | strcspn() | ||
| 85 | strerror() | ||
| 86 | strerror_r() | ||
| 87 | strlen() | ||
| 88 | strncat() | ||
| 89 | strncmp() | ||
| 90 | strncpy() | ||
| 91 | strpbrk() | ||
| 92 | strrchr() | ||
| 93 | strspn() | ||
| 94 | strstr() | ||
| 95 | strtok() | ||
| 96 | strtok_r() | ||
| 97 | strxfrm() | ||
| 98 | snprintf() | <stdio.h> | |
| 99 | sprintf() | ||
| 100 | sscanf() | ||
| 101 | vsnprintf() | ||
| 102 | vsprintf() | ||
| 103 | vsscanf() | ||
| 104 | va_arg() | <stdarg.h> | |
| 105 | va_copy() | ||
| 106 | va_end() | ||
| 107 | va_start() | ||
| 108 | POSIX_DEVICE_IO (40=36+3+1) | clearerr() | <stdio.h> |
| 109 | fclose() | ||
| 110 | fdopen() | ||
| 111 | feof() | ||
| 112 | ferror() | ||
| 113 | fflush() | ||
| 114 | fgetc() | ||
| 115 | fgets() | ||
| 116 | fileno() | ||
| 117 | fopen() | ||
| 118 | fprintf() | ||
| 119 | fputc() | ||
| 120 | fputs() | ||
| 121 | fread() | ||
| 122 | freopen() | ||
| 123 | fscanf() | ||
| 124 | fwrite() | ||
| 125 | getc() | ||
| 126 | getchar() | ||
| 127 | gets() | ||
| 128 | perror() | ||
| 129 | printf() | ||
| 130 | putc() | ||
| 131 | putchar() | ||
| 132 | puts() | ||
| 133 | scanf() | ||
| 134 | setbuf() | ||
| 135 | setvbuf() | ||
| 136 | stderr | ||
| 137 | stdin | ||
| 138 | stdout | ||
| 139 | ungetc() | ||
| 140 | vfprintf() | ||
| 141 | vfscanf() | ||
| 142 | vprintf() | ||
| 143 | vscanf() | ||
| 144 | close() | <unistd.h> | |
| 145 | read() | ||
| 146 | write() | ||
| 147 | open() | <fcntl.h> | |
| 148 | POSIX_FILE_LOCKING (7) | flockfile() | <stdio.h> |
| 149 | ftrylockfile() | ||
| 150 | funlockfile() | ||
| 151 | getc_unlocked() | ||
| 152 | getchar_unlocked() | ||
| 153 | putc_unlocked() | ||
| 154 | putchar_unlocked() | ||
| 155 | POSIX_PRIORITY_RANGES(3) | sched_get_priority_max() | <sched.h> |
| 156 | sched_get_priority_min() | ||
| 157 | sched_rr_get_interval() | ||
| 158 | POSIX_SIGNALS (16=1+2+13) | abort() | <stdlib.h> |
| 159 | alarm() | <unistd.h> | |
| 160 | pause() | ||
| 161 | kill() | <signal.h> | |
| 162 | raise() | ||
| 163 | sigaction() | ||
| 164 | sigaddset() | ||
| 165 | sigdelset() | ||
| 166 | sigemptyset() | ||
| 167 | sigfillset() | ||
| 168 | sigismember() | ||
| 169 | signal() | ||
| 170 | sigpending() | ||
| 171 | sigprocmask() | ||
| 172 | sigsuspend() | ||
| 173 | sigwait() | ||
| 174 | POSIX_SINGLE_PROCESS (8=3+1+3+1) | confstr() | <unistd.h> |
| 175 | environ | ||
| 176 | sysconf() | ||
| 177 | errno | <errno.h> | |
| 178 | getenv() | <stdlib.h> | |
| 179 | setenv() | ||
| 180 | unsetenv() | ||
| 181 | uname() | <sys/utsname.h> | |
| 182 | POSIX_THREADS_BASE (41=39+2) | pthread_atfork() | <pthread.h> |
| 183 | pthread_attr_destroy() | ||
| 184 | pthread_attr_getdetachstate() | ||
| 185 | pthread_attr_getschedparam() | ||
| 186 | pthread_attr_init() | ||
| 187 | pthread_attr_setdetachstate() | ||
| 188 | pthread_attr_setschedparam() | ||
| 189 | pthread_cancel() | ||
| 190 | pthread_cleanup_pop() | ||
| 191 | pthread_cleanup_push() | ||
| 192 | pthread_cond_broadcast() | ||
| 193 | pthread_cond_destroy() | ||
| 194 | pthread_cond_init() | ||
| 195 | pthread_cond_signal() | ||
| 196 | pthread_cond_timedwait() | ||
| 197 | pthread_cond_wait() | ||
| 198 | pthread_condattr_destroy() | ||
| 199 | pthread_condattr_init() | ||
| 200 | pthread_create() | ||
| 201 | pthread_detach() | ||
| 202 | pthread_equal() | ||
| 203 | pthread_exit() | ||
| 204 | pthread_getspecific() | ||
| 205 | pthread_join() | ||
| 206 | pthread_key_create() | ||
| 207 | pthread_key_delete() | ||
| 208 | pthread_mutex_destroy() | ||
| 209 | pthread_mutex_init() | ||
| 210 | pthread_mutex_lock() | ||
| 211 | pthread_mutex_trylock() | ||
| 212 | pthread_mutex_unlock() | ||
| 213 | pthread_mutexattr_destroy() | ||
| 214 | pthread_mutexattr_init() | ||
| 215 | pthread_once() | ||
| 216 | pthread_self() | ||
| 217 | pthread_setcancelstate() | ||
| 218 | pthread_setcanceltype() | ||
| 219 | pthread_setspecific() | ||
| 220 | pthread_testcancel() | ||
| 221 | pthread_kill() | <signal.h> | |
| 222 | pthread_sigmask() | ||
| 223 | XSI_THREAD_MUTEX_EXT (2) | pthread_mutexattr_gettype() | <pthread.h> |
| 224 | pthread_mutexattr_settype() | ||
| 225 | XSI_THREADS_EXT (6) | pthread_attr_getguardsize() | <pthread.h> |
| 226 | pthread_attr_getstack() | ||
| 227 | pthread_attr_setguardsize() | ||
| 228 | pthread_attr_setstack() | ||
| 229 | pthread_getconcurrency() | ||
| 230 | pthread_setconcurrency() | ||
| 231 | _POSIX_CLOCK_SELECTION(1) | clock_nanosleep() | <time.h> |
| 232 | _POSIX_CLOCK_SELECTION and _POSIX_THREADS(2) | pthread_condattr_getclock() | <pthread.h> |
| 233 | pthread_condattr_setclock() | ||
| 234 | _POSIX_FSYNC(1) | fsync() | <unistd.h> |
| 235 | _POSIX_MEMLOCK(2) | mlockall() | <sys/mman.h> |
| 236 | munlockall | ||
| 237 | _POSIX_MEMLOCK_RANGE(2) | mlock | <sys/mman.h> |
| 238 | munlock() | ||
| 239 | _POSIX_REALTIME_SIGNALS(3) | sigqueue() | <signal.h> |
| 240 | sigtimedwait() | ||
| 241 | sigwaitinfo() | ||
| 242 | _POSIX_SEMAPHORES(9) | sem_close() | <semaphore.h> |
| 243 | sem_destroy() | ||
| 244 | sem_getvalue() | ||
| 245 | sem_init() | ||
| 246 | sem_open() | ||
| 247 | sem_post() | ||
| 248 | sem_trywait() | ||
| 249 | sem_unlink() | ||
| 250 | sem_wait() | ||
| 251 | _POSIX_SEMAPHORES and _POSIX_TIMEOUTS(1) | sem_timedwait() | <semaphore.h> |
| 252 | _POSIX_SHARED_MEMORY_OBJECTS (2) | shm_open() | <sys/mman.h> |
| 253 | shm_unlink() | ||
| 254 | _POSIX_SHARED_MEMORY_OBJECTS or _POSIX_MAPPED_FILES(2) | mmap() | <sys/mman.h> |
| 255 | munmap() | ||
| 256 | _POSIX_SYNCHRONIZED_IO(1) | fdatasync() | <unistd.h> |
| 257 | _POSIX_THREAD_ATTR_STACKADDR and _POSIX_THREADS(2) | pthread_attr_getstackaddr() | <pthread.h> |
| 258 | pthread_attr_setstackaddr() | ||
| 259 | _POSIX_THREAD_ATTR_STACKSIZE and _POSIX_THREADS(2) | pthread_attr_getstacksize() | <pthread.h> |
| 260 | pthread_attr_setstacksize() | ||
| 261 | _POSIX_THREAD_CPUTIME and _POSIX_THREADS(1) | pthread_getcpuclockid() | <pthread.h> |
| 262 | _POSIX_THREAD_PRIO_INHERIT and _POSIX_THREADS(2) | pthread_mutexattr_getprotocol() | <pthread.h> |
| 263 | pthread_mutexattr_setprotocol() | ||
| 264 | _POSIX_THREAD_PRIO_PROTECT and _POSIX_THREADS(6-2) | pthread_mutex_getprioceiling() | <pthread.h> |
| 265 | pthread_mutex_setprioceiling() | ||
| 266 | pthread_mutexattr_getprioceiling() | ||
| 267 | pthread_mutexattr_setprioceiling() | ||
| 268 | _POSIX_THREAD_PRIORITY _SCHEDULING and _POSIX_THREADS(12-3) | pthread_attr_getinheritsched() | <pthread.h> |
| 269 | pthread_attr_getschedpolicy() | ||
| 270 | pthread_attr_getscope() | ||
| 271 | pthread_attr_setinheritsched() | ||
| 272 | pthread_attr_setschedpolicy() | ||
| 273 | pthread_attr_setscope() | ||
| 274 | pthread_getschedparam() | ||
| 275 | pthread_setschedparam() | ||
| 276 | pthread_setschedprio() | ||
| 277 | _POSIX_TIMEOUTS and _POSIX_THREADS(1) | pthread_mutex_timedlock | <pthread.h> <time.h> |
| 278 | _POSIX_TIMERS(9) | clock_getres() | <time.h> |
| 279 | clock_gettime() | ||
| 280 | clock_settime() | ||
| 281 | nanosleep() | ||
| 282 | timer_create() | ||
| 283 | timer_delete() | ||
| 284 | timer_getoverrun() | ||
| 285 | timer_gettime() | ||
| 286 | timer_settime() |
二、参考
1.学习笔记:IEEE 1003.13-2003(POSIX实时与嵌入式规范)
2.POSIX标准及RT-Thread实现情况