standards(7) стандарты Си и UNIX

ОПИСАНИЕ

В разделе СООТВЕТСТВИЕ СТАНДАРТАМ, который имеется во многих справочных страницах, перечисляются различные стандарты, которым соответствует описываемый интерфейс. В следующем списке кратко описаны эти стандарты.
V7
Version 7 (также известная как седьмая редакция) UNIX, выпущена AT&T/Bell Labs в 1979 году. После этого системы UNIX разделились на два основных диалекта: BSD и System V.
4.2BSD
Так называется реализация стандарта, определённого выпуском 4.2 Berkeley Software Distribution, выпущенном Калифорнийским университетом в Беркли. Это первый выпуск Berkeley со стеком TCP/IP и программным интерфейсом сокетов. 4.2BSD выпущена 1983 году.

Предыдущие основные версии BSD: 3BSD (1980 год), 4BSD (1980 год) и 4.1BSD (1981 год).

4.3BSD
Преемник 4.2BSD, выпущен в 1986 году.
4.4BSD
Преемник 4.3BSD, выпущен в 1993 году. Это был последний крупный выпуск от Университета Беркли.
System V
Так называется реализация стандарта, определённого выпуском AT&T в 1983 году своего коммерческого выпуска System V (пять). Предыдущий основной выпуск AT&T называется System III и выпущен в 1981 году.
System V release 2 (SVr2)
Это следующий выпуск System V, выпущенный в 1985 году. SVr2 формально описан в System V Interface Definition version 1 (SVID 1), опубликованном в 1985 году.
System V release 3 (SVr3)
Это следующий выпуск SVr2, выпущен в 1986 году. Данный выпуск формально описан в System V Interface Definition version 2 (SVID 2).
System V release 4 (SVr4)
Это следующий выпуск SVr3, выпущен в 1989 году. Эта версия System V описана в «Programmer's Reference Manual: Operating System API (Intel processors)» (Prentice-Hall 1992, ISBN 0-13-951294-2). Данный выпуск формально описан в System V Interface Definition version 3 (SVID 3) и считается определяющим выпуском System V.
SVID 4
Определение интерфейса System V, версия 4, выпущено в 1995 году. Доступно по адресу
C89
Это первая версия стандарта языка Си, одобрена ANSI (Американский национальный институт стандартов) в 1989 году (X3.159-1989). Иногда её называют ANSI C, но так как C99 также является стандартом ANSI, этот термин противоречив. Данный стандарт также одобрен ISO (Международная организация по стандартизации) в 1990 году (ISO/IEC 9899:1990) и поэтому изредка называется ISO C90.
C99
Данная редакция стандарта языка Си была одобрена ISO в 1999 году (ISO/IEC 9899:1999). Доступна по адресу
C11
Данная редакция стандарта языка Си была одобрена ISO в 2011 году (ISO/IEC 9899:2011).
POSIX.1-1990
«Переносимый интерфейс операционных систем для вычислительных сред». IEEE 1003.1-1990 часть 1 одобрена ISO в 1990 году (ISO/IEC 9945-1:1990). Термин «POSIX» был предложен Ричардом Столлманом.
POSIX.2
IEEE Std 1003.2-1992 описывает команды и утилиты, одобрен ISO в 1993 году (ISO/IEC 9945-2:1993).
POSIX.1b (ранее известен как POSIX.4)
IEEE Std 1003.1b-1993 описывает средства реального времени в переносимых операционных системах, одобрен ISO в 1996 году (ISO/IEC 9945-1:1996).
POSIX.1c
IEEE Std 1003.1c-1995 описывает интерфейс нитей POSIX.
POSIX.1d
IEEE Std 1003.1c-1999 описывает дополнительные расширения реального времени.
POSIX.1g
IEEE Std 1003.1g-2000 описывает сетевые программные интерфейсы (включая сокеты).
POSIX.1j
IEEE Std 1003.1j-2000 описывает развитые расширения реального времени.
POSIX.1-1996
Ревизия POSIX.1 1996 года с включёнными POSIX.1b и POSIX.1c.
XPG3
Выпущен в 1989 году, первый существенный выпуск X/Open Portability Guide, разработанный X/Open Company — консорциумом производителей. Данное многотомное руководство основано на стандартах POSIX.
XPG4
Ревизия X/Open Portability Guide, выпущенная в 1992 году.
XPG4v2
Ревизия XPG4, выпущенная в 1994 году. Также называется Spec 1170, где 1170 — количество интерфейсов, определённых в этом стандарте.
SUS (SUSv1)
Single UNIX Specification. Перепакованный вариант XPG4v2 и других стандартов X/Open (X/Open Curses Issue 4 version 2, X/Open Networking Service (XNS) Issue 4). Системы, удовлетворяющие этому стандарту, могут маркироваться как UNIX 95.
SUSv2
Single UNIX Specification, версия 2. Иногда называется XPG5. Данный стандарт появился в 1997 году. Системы, удовлетворяющие этому стандарту, могут маркироваться как UNIX 98. Смотрите также
POSIX.1-2001, SUSv3
Это выпуск 2001 года и объединение стандартов POSIX.1, POSIX.2 и SUS в один документ, проводимый под покровительством Austin Group Стандарт доступен в сети по адресу а интерфейсы, которые он описывает, также доступны в пакете справочных страниц Linux в разделах 1p и 3p (например, «man 3p open»).

В стандарте определено два уровня соответствия: POSIX conformance — базовый набор интерфейсов, требуемых в системе для соответствия и XSI Conformance — дополнительный набор интерфейсов («расширение XSI»), которые не являются обязательными для соответствия POSIX. Системы, удовлетворяющие XSI, могут маркироваться как UNIX 03. (соответствием XSI определяется Single UNIX Specification version 3 (SUSv3)).

Документ POSIX.1-2001 разделён на четыре части:

XBD: Определения, обозначения и положения, описание заголовочных файлов.

XSH: Описание функций (т. е., реальные реализации системных вызовов и библиотечных функций).

XCU: Описания команд и утилит (т. е., то, что описывалось ранее в POSIX.2).

XRAT: Справочные данные на другие части стандарта.

POSIX.1-2001 выверен с C99, поэтому все библиотечные функции, стандартизованные в C99, также стандартизованы в POSIX.1-2001.

Было проведено две технические поправки (небольшие исправления и улучшения) оригинального стандарта 2001 года: TC1 в 2003 году (обозначена как POSIX.1-2003) и TC2 в 2004 году (обозначена как POSIX.1-2004).

POSIX.1-2008, SUSv4
Следующий выпуск POSIX.1/SUS, утверждён в 2008 году.

Изменения в этом выпуске не столь велики как в POSIX.1-2001/SUSv3, но добавлено несколько новых интерфейсов и внесены изменения в описание существующих. Многие необязательные в POSIX.1-2001 интерфейсы стали обязательными в выпуске стандарта 2008 года. Некоторые интерфейсы из POSIX.1-2001 помечены как устаревшие в POSIX.1-2008, или удалены вообще.

Выпуск стандарта делится на те же части что и POSIX.1-2001 и также существует два уровня соответствия: основной POSIX Conformance и XSI Conformance, который описывает дополнительный набор интерфейсов вне основного.

В общем, если в разделе справочных страниц «СООТВЕТСТВИЕ СТАНДАРТАМ» указан POSIX.1-2001, то можно считать, что интерфейс также соответствует POSIX.1-2008, если не указано обратного.

Техническая поправка (небольшие исправления и улучшения) данного стандарта была выпущена в 2013 году (обозначена как POSIX.1-2013).

Дополнительную информацию можно найти на веб-сайте Austin Group по адресу: