Открыть сервис

Single UNIX Specification

Single UNIX Specification (SUS) — это общее название для семейства стандартов, определяющих интерфейс операционной системы, соответствие которому даёт право называться «UNIX». SUS разрабатывается и поддерживается консорциумом Austin Group (совместная работа The Open Group, IEEE и ISO/IEC). Стандарт описывает системные интерфейсы, заголовочные файлы, утилиты командной строки и сетевые протоколы, необходимые для обеспечения переносимости приложений между различными UNIX-подобными системами.

История

Предпосылки создания

В конце 1980-х годов на рынке существовало несколько конкурирующих версий UNIX (System V от AT&T, BSD от Калифорнийского университета в Беркли, Xenix от Microsoft и другие). Приложения, написанные для одной реализации, часто не работали на других. Это привело к «войнам UNIX» и необходимости стандартизации.

POSIX

Первым серьёзным шагом к унификации стал стандарт POSIX (Portable Operating System Interface), разработанный IEEE (Институт инженеров электротехники и электроники). В 1988 году был принят стандарт IEEE 1003.1-1988, описывающий базовые системные вызовы и библиотеки. Однако POSIX не охватывал многие аспекты, такие как утилиты командной строки и полноценная среда разработки.

Появление SUS

В 1994 году The Open Group (консорциум, образованный из X/Open и OSF) опубликовала Spec 1170 — спецификацию, объединившую POSIX, стандарты X/Open и дополнительные элементы из реальных систем. Номер 1170 означал количество интерфейсов (системных вызовов, библиотек, утилит), включённых в спецификацию. В 1995 году эта спецификация была переименована в UNIX 95 и стала основой для торговой марки UNIX. Версия UNIX 98 (1998 год) добавила поддержку 64-битных архитектур и потоков (POSIX Threads).

Austin Group

В 1998 году началось объединение усилий IEEE, The Open Group и ISO/IEC JTC 1/SC 22/WG 15. В результате в 2001 году был опубликован IEEE Std 1003.1-2001 (POSIX:2001), который одновременно является Single UNIX Specification Version 3. Эта версия стала единым эталонным стандартом. С тех пор обновления выходили в 2004, 2008, 2013, 2016 и 2018 годах. Текущая версия — SUSv4 (IEEE Std 1003.1-2018).

Структура стандарта

Single UNIX Specification состоит из четырёх основных частей:

1. Base Definitions (Том 1)

Содержит глоссарий терминов, требования к файловой системе, структуре каталогов, правам доступа, а также перечень всех заголовочных файлов (header files) с описанием их содержимого.

2. System Interfaces (Том 2)

Описывает системные вызовы (system calls) и библиотечные функции (library functions). Каждая функция документируется в формате man-страницы: прототип, описание, возвращаемые значения, ошибки. Примеры: fork(), exec(), open(), read(), write(), mmap().

3. Shell and Utilities (Том 3)

Определяет синтаксис и поведение командного интерпретатора (sh — Bourne shell) и более 200 утилит (например, grep, awk, sed, ls, cp, make). Для каждой утилиты указаны опции, аргументы, поведение в особых случаях.

4. Rationale (Том 4)

Пояснительная записка, объясняющая мотивы принятия тех или иных решений, исторические справки и обсуждение альтернатив. Не является нормативной частью, но полезна для разработчиков.

Ключевые требования для соответствия SUS

Чтобы операционная система могла быть сертифицирована как UNIX (и использовать соответствующую торговую марку), она должна:

Сертификация проводится The Open Group. После успешного прохождения система получает право называться UNIX® (например, macOS — с версии 10.5 Leopard, AIX, HP-UX, Solaris).

Отличия от POSIX

Хотя SUS и POSIX технически очень близки (начиная с SUSv3 они синхронизированы), есть два принципиальных отличия:

  1. Объём: SUS включает в себя POSIX плюс дополнительные интерфейсы (например, X/Open Curses, поддержка международных локалей, расширенная обработка сигналов). POSIX — это минимальный набор, SUS — расширенный.
  2. Юридический статус: POSIX — это стандарт IEEE/ISO, который может быть реализован любой системой (например, Linux, FreeBSD) без каких-либо лицензионных отчислений. SUS — это спецификация, владельцем которой является The Open Group, и соответствие ей даёт право на использование торговой марки UNIX.

Реализации и влияние

Системы, сертифицированные как UNIX

Системы, соответствующие SUS, но не сертифицированные

Влияние на другие стандарты

SUS послужил основой для:

Критика

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →