Единая спецификация UNIX - Single UNIX Specification

В Единая спецификация UNIX (SUS) - собирательное название семейства стандартов для компьютер операционные системы, соблюдение которых необходимо для использования "UNIX "товарный знак. Основные спецификации SUS разрабатываются и поддерживаются Остин Групп, которая является совместной рабочей группой IEEE, ISO JTC 1 SC22 и Открытая группа. Если операционная система представлена ​​Open Group для сертификации и проходит тесты на соответствие, то считается, что она соответствует стандарту UNIX, например UNIX 98 или UNIX 03.

Очень мало BSD и Linux операционные системы на базе представлены на соответствие Единой спецификации UNIX, хотя разработчики систем обычно стремятся к соблюдению POSIX стандарты, которые составляют основу единой спецификации UNIX.

История

1980-е: Мотивация

SUS возникла из проекта середины 1980-х годов по стандартизации Операционная система интерфейсы для программного обеспечения, разработанного для различных вариантов операционной системы Unix. Потребность в стандартизации возникла из-за того, что предприятия, использующие компьютеры, хотели иметь возможность разрабатывать программы, которые можно было бы использовать в компьютерных системах различных производителей, без повторной реализации программ. Unix был выбран в качестве основы для стандартного системного интерфейса отчасти потому, что он не зависел от производителя.

1988: POSIX

В 1988 году эти стандарты стали IEEE 1003 (также зарегистрирован как ISO /IEC 9945), или же POSIX, что примерно означает Портативный интерфейс операционной системы.

1990-е: Spec 1170

В начале 1990-х годов несколько крупных поставщиков инициировали отдельную разработку, известную как Common API Specification или Spec 1170, которые сформировали COSE альянс вслед за Войны Unix. Эта спецификация стала более популярной, поскольку была доступна бесплатно, тогда как IEEE взимал значительную плату за доступ к спецификации POSIX. Управление этими спецификациями было поручено X / Открыть который также получил Unix товарный знак от Novell в 1993 г. Unix International (UI) объединен с Фонд открытого программного обеспечения (OSF) в 1994 году только для слияния с X / Open, чтобы сформировать Открытая группа в 1996 г.

1994: Единая спецификация UNIX

Это была переупаковка X / Open Руководство по переносимости (XPG), выпуск 4, версия 2.

Выпуск 1995 г.

В 1995 году Open Group выпустила Единая спецификация UNIX, версия 1, издание 1995 г..[1]

Эта спецификация состояла из:

  • Определения системных интерфейсов, выпуск 4, версия 2,
  • Системные интерфейсы и заголовки, выпуск 4, версия 2,
  • Команды и утилиты, выпуск 4, версия 2,
  • X / Open Curses, Выпуск 4 Версия 2,
  • Сетевые службы, выпуск 4,

и лежал в основе бренда UNIX 95.[2]

1997: Единая спецификация UNIX версии 2

В 1997 году Open Group выпустила Единая спецификация UNIX версии 2.[3][4]

Эта спецификация состояла из:

  • Базовые определения, выпуск 5,
  • Системные интерфейсы и заголовки, выпуск 5,
  • Команды и утилиты, выпуск 5,
  • Сетевые службы, выпуск 5,
  • X / Open Curses, выпуск 4, версия 2,

и лежал в основе бренда UNIX 98.[5]

2001: Единая спецификация UNIX версии 3, POSIX: 2001

С 1998 г. рабочая группа известный как Остин Групп начали разрабатывать комбинированный стандарт, который будет известен как Единая спецификация UNIX версии 3 и, как POSIX: 2001 (формально: IEEE Std 1003.1-2001). Он был выпущен 30 января 2002 года.[6]

Этот стандарт состоял из:

  • Базовые определения, выпуск 6,
  • Системные интерфейсы и заголовки, выпуск 6,
  • Команды и утилиты, выпуск 6,

и лежит в основе бренда UNIX 03.[7]

2004: POSIX: 2004

В 2004 году была выпущена новая редакция стандарта POSIX: 2001, включающая два технических исправления. Это называется POSIX: 2004 (формально: IEEE Std 1003.1-2004).[8][9]

2008: Единая спецификация UNIX версии 4, POSIX: 2008

В декабре 2008 г. Остин Групп опубликовал новую основную редакцию, известную как POSIX: 2008 (формально: IEEE Std 1003.1-2008).[10][11][12] Это ядро ​​единой спецификации UNIX версии 4 (SUSv4).[13]

Этот стандарт состоит из:

  • Базовые определения, выпуск 7,
  • Системные интерфейсы и заголовки, выпуск 7,
  • Команды и утилиты, выпуск 7.

Издание 2013 г.

Техническое исправление 1 в основном нацелено на интернационализацию и вводит модель доступа на основе ролей. Он был опубликован в 2012 году для спецификации Unix Base и зарегистрирован как POSIX 2008 Edition 2013 года. Торговая марка UNIX V7 (не путать с V7 UNIX, версия Исследование Unix с 1979 г.) был создан для обозначения соответствия SUS версии 4.[14]

Издание 2016 г.

Техническое исправление 2 было опубликовано в сентябре 2016 года, что привело к IEEE Std 1003.1-2008, издание 2016 г. и Единая спецификация UNIX, версия 4, издание 2016 г..

Издание 2018 г.

В январе 2018 года была выпущена версия «административного накопительного пакета», susv4-2018. Он включает единую спецификацию UNIX версии 4 TC1 и TC2 и технически идентичен изданию 2016 года.[15]

Технические характеристики

SUSv3 насчитывает около 3700 страниц, которые тематически разделены на четыре основные части:

  • Базовые определения (XBD) - список определений и условных обозначений, используемых в спецификациях, и список C файлы заголовков, которые должны быть предоставлены совместимыми системами. Всего доступно 84 файла заголовков.
  • Шелл и Утилиты (XCU) - список утилит и описание оболочки, ш. Всего указано 160 инженерных сетей.
  • Системные интерфейсы (XSH) - содержит описание различных функций, которые реализованы как системные вызовы или же библиотека функции. Всего указано 1123 системных интерфейса.
  • Обоснование (XRAT) - объяснение стандарта.

Стандартная командная строка пользователя и интерфейс сценариев - это POSIX оболочка, расширение Bourne Shell на основе ранней версии Корн Шелл. Другие программы, службы и утилиты пользовательского уровня включают: awk, эхо, ред, vi, и сотни других. Обязательные услуги на уровне программы включают базовые Ввод / вывод (файл, Терминал, и сеть ) Сервисы. Набор тестов сопровождает стандарт. Это называется PCTS или Комплект сертификационных тестов POSIX.

Кроме того, SUS включает ПРОКЛЯТИЯ (XCURSES) спецификация, которая определяет 372 функции и 3 файла заголовков. Всего в SUSv3 указано 1742 интерфейса.

Обратите внимание, что система не должна включать исходный код каким-либо образом получен из AT&T Unix, чтобы соответствовать спецификации. Например, IBM OS / 390, сейчас же z / OS, квалифицируется как "Unix", несмотря на отсутствие общего кода.[нужна цитата ]

Знаки для совместимых систем

Соответствующие системы имеют пять официальных знаков:

  • UNIX 93
  • UNIX 95 - знак для систем, соответствующих версии 1 SUS
  • UNIX 98 - знак для систем, соответствующих версии 2 SUS
  • UNIX 03 - знак для систем, соответствующих версии 3 SUS
  • UNIX V7 - знак для систем, соответствующих версии 4 SUS (включая исправления)[16]

Согласие

ТоварПродавецАрхитектураUNIX V7[17]UNIX 03[18]UNIX 98[19]UNIX 95[20]UNIX 93[21]
AIXКорпорация IBMPowerPCдадаНетНетНет
FTXООО ЦемпрусPA-RISCНетНетНетНетда
EulerOSHuaweix86-64НетдаНетНетНет
HP-UXHewlett Packard EnterpriseIA-64, PA-RISCНетдаНетдаНет
macOS (ранее OS X)яблокоx86-64НетдаНетНетНет
OpenServerСиньюоIA-32НетНетНетНетда
UnixWareСиньюоIA-32НетНетНетдаНет
z / OSКорпорация IBMz / АрхитектураНетНетНетдаНет

Зарегистрированные в настоящее время системы UNIX

AIX

AIX 5L V5.2 с некоторыми обновлениями, AIX 5L V5.3 и AIX 6.1 зарегистрированы как совместимые с UNIX 03. AIX V7.2 и более поздние версии зарегистрированы как совместимые с UNIX V7.

FTX

FTX зарегистрирован как совместимый с UNIX 93.[22]

EulerOS

EulerOS 2.0 для x86-64 архитектура была сертифицирована как совместимая с UNIX 03.[23] Заявление о соответствии UNIX 03 показывает, что стандартный компилятор C взят из Коллекция компиляторов GNU (gcc), и что система является Дистрибутив Linux из Красная шляпа семья.[24]

HP-UX

HP-UX 11i V3 Release B.11.31 зарегистрирован как совместимый с UNIX 03. Предыдущие выпуски зарегистрированы как UNIX 95.[25]

Функции HP-UX 11i также обеспечивают частичное соответствие спецификации UNIX 98.[26]

macOS

яблоко с macOS (ранее известная как Mac OS X или OS X) является зарегистрированным продуктом UNIX 03,[27]первая регистрация в Mac OS X 10.5 «Леопард» 26 октября 2007 г. (при запуске на Mac с процессорами Intel).[28][29] Все более новые версии macOS, вплоть до macOS Big Sur, были зарегистрированы.[30]

Синьюо

UnixWare 7.1.3 и более поздние версии зарегистрированы как UNIX 95-совместимые.SCO OpenServer 5 и 6 зарегистрированы как UNIX 93-совместимые.

z / OS

IBM z / OS 1.2 и выше зарегистрирована как UNIX 95-совместимая. Z / OS 1.9, выпущенная 28 сентября 2007 г., а последующие выпуски «лучше соответствуют» UNIX 03.[31]

Ранее зарегистрированные системы UNIX

Солярис

Солярис 11.4 был зарегистрирован как UNIX v7-совместимый; Solaris - единственная система, которая была зарегистрирована как совместимая с v7 по состоянию на январь 2020 г..[32] Solaris 11 и Solaris 10 были зарегистрированы как совместимые с UNIX 03 на 32-битный и 64-битный x86 (X86-64 ) и SPARC системы. Solaris 8 и 9 был зарегистрирован как UNIX 98-совместимый на 32-битный x86 и SPARC системы; 64-битные системы x86 не поддерживаются.

Solaris 2.5.1 также был зарегистрирован как UNIX 95-совместимый на PReP PowerPC платформу в 1996 году, но продукт был снят до того, как было продано более нескольких десятков копий.[33]

Надежный UNIX

Последний Надежный UNIX версии были зарегистрированы как UNIX 95-совместимые (жесткий брендинг XPG4).

Inspur K-UX

Inspur K-UX 2.0 и 3.0 для x86-64 были сертифицированы как совместимые с UNIX 03.[34][35] Заявление о соответствии UNIX 03 для Inspur K-UX 2.0 и 3.0 показывает, что стандартный компилятор C взят из Коллекция компиляторов GNU (gcc), и что система является Дистрибутив Linux из Красная шляпа семья.[36]

Tru64 UNIX

Tru64 UNIX V5.1A и более поздние версии были зарегистрированы как совместимые с UNIX 98.

Другой

Другие операционные системы, ранее зарегистрированные как совместимые с UNIX 95 или UNIX 93:

Незарегистрированные Unix-подобные системы

Разработчики и поставщики Unix-подобный операционные системы, такие как Linux, FreeBSD, и МИНИКС, как правило, не сертифицируют свои дистрибутивы и по умолчанию не устанавливают полные утилиты POSIX.[38][39] Иногда соответствие SUS можно улучшить, установив дополнительные пакеты, но очень немногие системы Linux можно настроить так, чтобы они полностью соответствовали требованиям.

Дарвин, подмножество macOS с открытым исходным кодом, имеет поведение, которое можно настроить в соответствии с UNIX 03.[40][41]

Во FreeBSD ранее был «Проект соответствия C99 и POSIX», который был нацелен на соответствие подмножеству Единой спецификации UNIX и документации, в которой были различия.[42]

Проект соответствия FreeBSD C99 и POSIX направлен на реализацию всех требований стандартов ISO 9899: 1999 (C99) и IEEE 1003.1-2001 (POSIX). В тех случаях, когда аспекты этих стандартов не могут быть соблюдены, эти аспекты будут задокументированы в руководствах c99 (7) или posix (7). Целью этого проекта также является внедрение регрессионных тестов для обеспечения правильности, когда это возможно.

Для Linux Стандартная база Linux была создана в 2001 году как попытка стандартизировать внутреннюю структуру систем на базе Linux для повышения совместимости. Он основан на спецификациях POSIX, единой спецификации UNIX и других открытых стандартах, а также расширяет их в нескольких областях; но есть некоторые конфликты между стандартами LSB и POSIX.[43] Однако, хотя эти стандарты общеприняты, немногие Дистрибутивы Linux фактически пройти сертификацию как LSB-совместимую.[44]

Смотрите также

Рекомендации

  1. ^ https://www2.opengroup.org/ogsys/catalog/T907
  2. ^ «Открытый бренд». www.opengroup.org.
  3. ^ «Единая спецификация UNIX, версия 2». www.opengroup.org.
  4. ^ «Open Group объявляет о расширенной единой спецификации UNIX» (Пресс-релиз). Открытая группа. 12 марта 1997 г.. Получено 26 июля, 2009.
  5. ^ «Открытый бренд». www.opengroup.org.
  6. ^ «Open Group объявляет о завершении совместной ревизии POSIX и единой спецификации UNIX» (Пресс-релиз). Открытая группа. 30 января 2002 г.. Получено 26 июля, 2009.
  7. ^ «Открытый бренд». www.opengroup.org.
  8. ^ "Базовые спецификации Open Group, выпуск 6". www.opengroup.org.
  9. ^ «IEEE Std 1003.1, издание 2004 г.». Получено 26 июля, 2009.
  10. ^ «Базовые спецификации Open Group, выпуск 7, издание 2018 г.». www.opengroup.org.
  11. ^ «Основные характеристики, выпуск 7». Открытая группа. Получено 26 июля, 2009.
  12. ^ "Группа по пересмотру общих стандартов Остина". Открытая группа. Получено 26 июля, 2009.
  13. ^ Единая спецификация UNIX версии 4
  14. ^ «UNIX® V7». www2.opengroup.org.
  15. ^ «Основные характеристики, выпуск 7, издание 2018 г.». Открытая группа. Получено 6 июля, 2018.
  16. ^ «Система UNIX - Сертификация UNIX V7». www.unix.org.
  17. ^ «Открытый реестр торговых марок, UNIX V7».
  18. ^ "Открытый реестр торговых марок, UNIX 03".
  19. ^ «Открытый реестр торговых марок, UNIX 98».
  20. ^ «Открытый реестр торговых марок, UNIX 95».
  21. ^ "Открытый реестр торговых марок, UNIX 95".
  22. ^ Открытая группа. «Открытый бренд». Получено 18 апреля, 2020.
  23. ^ «Операционная система Huawei KunLun EulerOS 2.0 прошла сертификацию UNIX». Huawei. Получено 29 октября, 2016.
  24. ^ Пэн Шэнь. «Заявление о соответствии Huawei: команды и утилиты, версия 4». Открытая группа. Получено 29 октября, 2016.
  25. ^ «Соответствие стандартному профилю UNIX 2003». Hewlett Packard. Получено 22 июля, 2014.
  26. ^ «Комплект для перехода на программное обеспечение HP-UX». Hewlett Packard. Получено 22 июля, 2014.
  27. ^ «OS X для пользователей UNIX» (PDF). Июль 2011 г.
  28. ^ «Mac OS X Leopard - Технология - UNIX». Обзор технологий Leopard. Apple Inc. Архивировано с оригинал 23 августа 2007 г.. Получено 11 июня, 2007. Leopard теперь является зарегистрированным продуктом UNIX 03 с открытым брендом, который соответствует спецификациям SUSv3 и POSIX 1003.1 для C API, утилит оболочки и потоков.
  29. ^ Открытая группа. «Mac OS X версии 10.5 Leopard для сертификации компьютеров Macintosh на базе Intel». Получено 12 июня, 2007.
  30. ^ «Открытый бренд». www.opengroup.org.
  31. ^ «Предварительная версия: передовые инфраструктурные решения IBM z / OS V1.9 для нужд вашего бизнеса» (PDF). IBM. 6 февраля 2007 г. С. 4, 15.. Получено 11 июня, 2007.
  32. ^ «UNIX V7 - Открытый реестр торговых марок». Открытая группа.
  33. ^ «Солярис 2.5.1». Архивировано из оригинал 12 сентября 2005 г.
  34. ^ «Открытый реестр сертифицированной продукции». Открытая группа. 29 мая 2014 г.. Получено 29 мая, 2014.
  35. ^ Се Руохун. «Заявление о соответствии Inspur». Открытая группа. Получено 8 декабря, 2015.
  36. ^ Се Руохун. «Заявление о соответствии Inspur: команды и утилиты, версия 4». Открытая группа. Получено 8 декабря, 2015.
  37. ^ Открытая группа. «Реестр сертифицированной продукции». Получено 20 декабря, 2009.
  38. ^ Например человек и sccs обычно не устанавливаются в Linux, так как обычно не используются.
  39. ^ Отслеживание ошибок Ubuntu: нет UNIX-совместимой реализации pax
  40. ^ "Страница руководства Mac OS X для совместимости (5) - Mac OS X 10.3". developer.apple.com. 23 октября 2005 г. Архивировано с оригинал 10 марта 2009 г.. Получено 24 мая, 2018.
  41. ^ "compat (5) Страница руководства - macOS 10.9". developer.apple.com. 30 июня 2010 г.. Получено 24 мая, 2018.
  42. ^ «Проект соответствия FreeBSD C99 и POSIX». Проект FreeBSD. Архивировано из оригинал 23 декабря 2013 г.
  43. ^ «ISO / IEC TR 24715: 2006 - Информационные технологии - Языки программирования, их среды и интерфейсы системного программного обеспечения - Технический отчет о конфликтах между ISO / IEC 9945 (POSIX) и стандартной базой Linux (ISO / IEC 23360)». Получено 15 октября, 2011.
  44. ^ «Каталог сертифицированных продуктов». Фонд Linux. Получено 9 декабря, 2015.

Источники

внешняя ссылка