C POSIX library
C POSIX library — языконезависимая библиотека (использующая соглашение о вызове cdecl
), добавляющая специфические функции в систему POSIX. POSIX (и SUS) определяют номера подпрограмм, которые должны быть доступны в дополнение к соответствующим подпрограммам стандартной библиотеки Си. Она была разработана в одно время со стандартом ANSI языка Си и поэтому вплотную с этим языком связана. Были предприняты попытки сделать библиотеки Си и POSIX совместимыми, но, тем не менее, есть несколько функций POSIX, никогда не упоминаемых в ANSI Си.
Удобно применять совместно с функциональностью стандартной библиотекой Си с различной степенью взаимодействия. Например, glibc реализует функции такие как fork() внутри libc.so, но перед тем, как NPTL объединится с glibc, она создаёт отдельную библиотеку со своим собственным флагом линковщика. Зачастую, такая POSIX-специфичная функциональность рассматривается как часть библиотеки; библиотека Си соответственно может быть идентифицирована как библиотека Си, удовлетворяющая стандартам ANSI или ISO.
Заголовочные файлы библиотеки C POSIX
Согласно стандарту POSIX.1, стандартная библиотека должна содержать следующие заголовочные файлы[1]:
<aio.h> | Асинхронный ввод/вывод |
<arpa/inet.h> | Определения операций с сетью |
<assert.h> | Макрос для проверки утверждений |
<complex.h> | Комплексная арифметика |
<cpio.h> | Магические числа для формата архива cpio |
<ctype.h> | Определение типа символов |
<dirent.h> | Открытие и вывод каталогов |
<dlfcn.h> | Динамическая компоновка |
<errno.h> | Номера системных ошибок |
<fcntl.h> | Открытие и вывод каталогов |
<fenv.h> | Работа с контекстом операций чисел с плавающей запятой |
<float.h> | |
<fmtmsg.h> | Форматирование сообщений |
<fnmatch.h> | |
<ftw.h> | Обход дерева файлов |
<glob.h> | |
<grp.h> | информация о пользовательских группах и управление |
<iconv.h> | Преобразование кодировок текста |
<inttypes.h> | |
<iso646.h> | Альтернативный синтаксис для некоторых операторов языка C |
<langinfo.h> | |
<libgen.h> | Функции обработки путей |
<limits.h> | |
<locale.h> | |
<math.h> | Математические функции |
<monetary.h> | |
<mqueue.h> | Очереди сообщений |
<ndbm.h> | |
<net/if.h> | |
<netdb.h> | |
<netinet/in.h> | |
<netinet/tcp.h> | |
<nl_types.h> | |
<poll.h> | |
<pthread.h> | Потоки выполнения |
<pwd.h> | passwd (пользовательская информация) доступ и контроль |
<regex.h> | |
<sched.h> | |
<search.h> | |
<semaphore.h> | |
<setjmp.h> | |
<signal.h> | |
<spawn.h> | |
<stdarg.h> | |
<stdbool.h> | |
<stddef.h> | |
<stdint.h> | Определение целочисленных типов данных |
<stdio.h> | |
<stdlib.h> | |
<string.h> | |
<strings.h> | |
<stropts.h> | |
<sys/ipc.h> | межпроцессное взаимодействие (IPC) |
<sys/mman.h> | Отображение файлов в память |
<sys/msg.h> | POSIX потоки сообщений |
<sys/resource.h> | |
<sys/select.h> | |
<sys/sem.h> | POSIX семафоры |
<sys/shm.h> | |
<sys/socket.h> | |
<sys/stat.h> | информация о файле (stat и пр.) |
<sys/statvfs.h> | |
<sys/time.h> | функции и структуры работы со временем и датой |
<sys/times.h> | |
<sys/types.h> | различные типы данных |
<sys/uio.h> | |
<sys/un.h> | |
<sys/utsname.h> | uname и связанные структуры |
<sys/wait.h> | статус завершенных дочерних процессов (смотри wait) |
<syslog.h> | |
<tar.h> | магические числа для формата архивов tar |
<termios.h> | позволяет использовать интерфейс терминала ввода-вывода |
<tgmath.h> | |
<time.h> | |
<trace.h> | |
<ulimit.h> | |
<unistd.h> | различные основные функции и константы POSIX |
<utime.h> | inode доступ и количество модификаций |
<utmpx.h> | |
<wchar.h> | Обработка «широких» символов |
<wctype.h> | Функции классификации и преобразования «широких» символов |
<wordexp.h> |
Ссылки
Примечания
- ↑ Chapter 13. Headers // Standard for Information Technology– Portable Operating System Interface (POSIX®). Base Specifications, Issue 7. — IEEE, 2008. — doi:10.1109/IEEESTD.2008.4694976.