Среда программирования UNIX определяется несколькими стандартами, обсуждавшимися во введении, и может незначительно различаться для разных версий системы. В частности, стандарты ANSI С, POSIX. 1 и XPG4, определяют названия и назначения файлов заголовков, приведенных в табл. 2.2.
Файл заголовка |
Назначение |
|
Содержит прототип функции assert(3C) , используемой для диагностики |
|
Содержит определения, используемые для файловых архивов cpio(1) |
|
Содержит определения символьных типов, а также прототипы функций определения классов символов (ASCII, печатные, цифровые и т.д.) — isascii(3C) , isprint(3C) , isdigit(3C) и т.д. |
|
Содержит определения структур данных каталога, а также прототипы функций работы с каталогами opendir(3C) , readdir(3C) и т.д. |
|
Содержит определения кодов ошибок (см. раздел "Обработка ошибок" в начале главы) |
|
Содержит прототипы системных вызовов fcntl(2) , open(2) и creat(2) , а также определения констант и структур данных, необходимых при работе с файлами |
|
Содержит определения констант, необходимых для операций с плавающей точкой |
|
Содержит прототипы функций, используемых для сканирования дерева файловой системы (file tree walk) ftw(3C) и nftw(3C) , a также определения используемых констант |
|
Содержит прототипы функций и определения структур данных, используемых для работы с группами пользователей: getgrnam(3C) , getgrent(3C) , getgrgid(3C) и т.д. |
|
Содержит определения языковых констант: дни недели, названия месяцев и т.д., а также прототип функции langinfo(3C) |
|
Содержит определения констант, определяющих значения ограничений для данной реализации: минимальные и максимальные значения основных типов данных, максимальное значение файловых связей, максимальная длина имени файла и т.д. |
|
Содержит определения констант, используемых для создания пользовательской среды, зависящей от языковых и культурных традиций (форматы дат, денежные форматы и т.д.), а также прототип функции setlocale(3C) |
|
Содержит определения математических констант (π, е, √2 и т.д.) |
|
Содержит определения для каталогов сообщений (message catalog), а также прототипы функций catopen(3C) и catclose(3C) |
|
Содержит определение структуры файла паролей /etc/passwd, а также прототипы функций работы с ним: getpwnam(3C) , getpwent(3C) , getpwuid(3C) и т.д. |
|
Содержит определения констант и структур данных, используемых в регулярных выражениях, а также прототипы функций для работы с ними: regcomp(3C) , regexec(3C) и т.д. |
|
Содержит определения констант и структур данных, а также прототипы функций, необходимых для поиска: hsearch(3C) , hcreate(3C) , hdestroy(3C) |
|
Содержит прототипы функций перехода setjmp(3C) , sigsetjmp(3C) , longjmp(3C) , siglongjmp(3C) , а также определения связанных с ними структур данных |
|
Содержит определения констант и прототипы функций, необходимых для работы с сигналами: sigsetops(3C) , sigemptyset(3C) , sigaddset(3C) и т.д. (см. раздел "Сигналы" далее в этой главе) |
|
Содержит определения, необходимые для поддержки списков аргументов переменной длины |
|
Содержит стандартные определения (например size_t) |
|
Содержит определения стандартной библиотеки ввода/вывода |
|
Содержит определения стандартной библиотеки |
|
Содержит прототипы функций работы со строками string(3C) , strcasecmp(3C) , strcat(3C) , strcpy(3C) и т.д. |
|
Содержит определения, используемые для файловых архивов tar(1) |
|
Содержит определения констант, структур данных и прототипы функций для обработки терминального ввода/вывода |
|
Содержит определения типов, констант и прототипы функций для работы со временем и датами: time(2) , ctime(3C) , localtime(3C) , tzset(3C) , а также определения, относящиеся к таймерам getitimer(2) , setitimer(2) . Таймеры будут рассмотрены в главе 3 |
|
Содержит определения констант и прототип системного вызова ulimit(2) для управления ограничениями, накладываемыми на процесс. См. также раздел "Ограничения" далее в этой главе |
|
Содержит определения системных символьных констант, а также прототипы большинства системных вызовов |
|
Содержит определения структур данных и прототип системного вызова utime(2) для работы с временными характеристиками файла (временем доступа и модификации) |
|
Содержит определения, относящиеся к системе межпроцессного взаимодействия (IPC), которые рассматриваются в главе 3 |
|
Содержит определения, относящиеся к (сообщениям) подсистеме IPC. См. также раздел "Сообщения" главы 3 |
|
Содержит определения констант и прототипы системных вызовов управления размерами ресурсов, доступных процессу: getrlimit(2) и setrlimit(2) . Более подробно ограничения на ресурсы обсуждаются в разделе "Ограничения" далее в этой главе |
|
Содержит определения, относящиеся к (семафорам) подсистеме IPC. См. также раздел "Семафоры" главы 3 |
|
Содержит определения, относящиеся к (разделяемой памяти) подсистеме IPC. См. также раздел "Разделяемая память" главы 3 |
|
Содержит определения структур данных и прототипы системных вызовов, необходимых для получения информации о файле: stat(2) , lstat(2) , fstat(2) . Подробнее эти системные вызовы рассмотрены в разделе "Метаданные файла" далее в этой главе |
|
Содержит определения структур данных и прототипа системного вызова times(2) , служащего для получения статистики выполнения процесса (времени выполнения в режиме ядра, задачи и т.д.) |
|
Содержит определения примитивов системных данных |
|
Содержит определения структур данных и прототип системного вызова uname(2) , используемого для получения имен системы (компьютера, операционной системы, версии и т.д.) |
|
Содержит определения констант и прототипы системных вызовов wait(2) , waitpid(2) , используемых для синхронизации выполнения родственных процессов |