POSIX
POSIX (англ. portable operating system interface for Unix — переносимый интерфейс операционных систем Unix) — набор стандартов, описывающих интерфейсы между операционной системой и прикладной программой (системный API), библиотеку языка C и набор приложений и их интерфейсов. Стандарт создан для обеспечения совместимости различных UNIX-подобных операционных систем и переносимости прикладных программ на уровне исходного кода, но может быть использован и для не-Unix систем. Серия стандартов POSIX была разработана комитетом 1003 IEEE. Международная организация по стандартизации (ISO) совместно c Международной электротехнической комиссией (IEC) приняли данный стандарт (POSIX) под названием ISO/IEC 9945.
Название «POSIX» было предложено Ричардом Столлманом[1]. Введение в POSIX.1 гласит: «Ожидается произношение „позикс“ как „позитив“, а не „посикс“. Произношение опубликовано в целях обнародования стандартного способа ссылки на стандартный интерфейс операционной системы». «POSIX» является зарегистрированным товарным знаком IEEE[1].
Содержание
Задачи[править | править вики-текст]
- содействовать облегчению переноса кода прикладных программ на иные платформы;
- способствовать определению и унификации интерфейсов заранее при проектировании, а не в процессе их реализации;
- сохранять по возможности и учитывать все главные, созданные ранее и используемые прикладные программы;
- определять необходимый минимум интерфейсов прикладных программ, для ускорения создания, одобрения и утверждения документов;
- развивать стандарты в направлении обеспечения коммуникационных сетей, распределенной обработки данных и защиты информации;
- рекомендовать ограничение использования бинарного (объектного) кода для приложений в простых системах.
Состав[править | править вики-текст]
Стандарт состоит из четырёх основных разделов.
- Основные определения (Base definitions) — список основных определений и соглашений, используемых в спецификациях, и список заголовочных файлов языка Си, которые должны быть предоставлены соответствующей стандарту системой.
- Оболочка и утилиты (Shell and utilities) — описание утилит и командной оболочки sh, стандарты регулярных выражений.
- Системные интерфейсы (System interfaces) — список системных вызовов языка Си.
- Обоснование (Rationale) — объяснение принципов, используемых в стандарте.
Версии[править | править вики-текст]
| Проверить информацию.
Необходимо проверить точность фактов и достоверность сведений, изложенных в этой статье.
На странице обсуждения должны быть пояснения. |
- POSIX.1, Корневые службы (включает стандарт ANSI C) (IEEE Std 1003.1-1988)
- Создание и управление процессами
- Сигналы[6]
- Исключения плавающей точки
- Нарушение сегментации
- Запрещенные директивы
- Ошибки шины
- Таймеры
- Операции над файлами (каталогами)
- Каналы
- Библиотека C (Стандартный С)
- Интерфейс и контроль ввода-вывода
- Триггеры процессов
- POSIX.1b, Расширения реального времени (IEEE Std 1003.1b-1993)
- Планировка приоритетов
- Сигналы реального времени
- Таймеры и синхронизация
- Семафоры
- Передача сообщений
- Разделяемая память
- Асинхронный и синхронный ввод-вывод
- Интерфейс блокировки памяти
- POSIX.1c, Расширения потоков (IEEE Std 1003.1c-1995)
- Создание, контроль и завершение выполнения потоков
- Планировщик потоков
- Синхронизация потоков
- Обработка сигналов
POSIX-совместимые ОС[править | править вики-текст]
В зависимости от степени совместимости со стандартами, ОС могут быть полностью или частично совместимы с POSIX. Сертифицированные продукты могут быть найдены на сайте IEEE[2]. Бесплатный доступ к версии стандарта IEEE Std 1003.1-2004 находится на сайте «The open group»[3].
Полностью POSIX-совместимые[править | править вики-текст]
Полностью соответствующие одной из версий стандарта POSIX:
- A/UX
- BSD/OS
- HP-UX
- IBM AIX
- Integrity и её микроядро µ-velosity
- IRIX
- LynxOS
- Mac OS X
- Minix
- MPE/iX
- OpenSolaris
- OpenVMS
- QNX
- RTEMS
- Solaris
- UnixWare
- VxWorks
По большей части POSIX-совместимые[править | править вики-текст]
Официально не сертифицированные как POSIX-совместимые, но соответствующие по большей части:
- BeOS
- FreeBSD
- Linux (большинство дистрибутивов — см. LSB)
- NetBSD
- Nucleus RTOS
- OpenBSD
- Sanos
- SkyOS
- Syllable
- VSTa
- Symbian OS (при помощи PIPS)
- DragonFlyBSD
POSIX для Windows[править | править вики-текст]
- Cygwin — обеспечивает частичное соответствие POSIX для некоторых продуктов Microsoft Windows.
- UnxUtils — набор утилит из POSIX-окружения.
- Microsoft POSIX subsystem, необязательная подсистема Windows.
- «Microsoft Windows Services for UNIX» — обеспечивает полное соответствие POSIX для некоторых продуктов Microsoft Windows. Операционные системы на базе Windows NT до Windows 2000 имели POSIX-уровень, встроенный в ОС, и «UNIX Services for Windows» предоставляло UNIX-подобное окружение. Для получения POSIX-совместимости в Windows XP нужно скачать и установить бесплатный пакет «Windows Services for UNIX». UNIX-подсистема встроена в Enterprise и Ultimate редакции Windows Vista и не может быть добавлена в другие редакции.
- UWIN от «AT&T research» обеспечивает POSIX поверх Win32 API.
См. также[править | править вики-текст]
Примечания[править | править вики-текст]
- ↑ 1 2 POSIX® 1003.1 Frequently Asked Questions (FAQ Version 1.12) (англ.) (2 February 2006). Проверено 5 марта 2008. Архивировано из первоисточника 22 августа 2011.
- ↑ POSIX. Standards. IEEE. Архивировано из первоисточника 22 августа 2011.
- ↑ The Open Group. Архивировано из первоисточника 3 февраля 2012.
Литература[править | править вики-текст]
- System application program interface (API) [C Language]: ISO/IEC 9945-1, ANSI/IEEE Std 1003.1. — New York: IEEE, 1996. — ISBN 1-55937-573-6
- Информационная технология — интерфейс мобильной операционной системы (POSIX). Часть 1: Интерфейс прикладных программ (API) [Язык программирования С]: в 2 т. — М.: НИИСИ РАН, 1999. — ISBN 5-93838-001-4
- Т. 1: Введение и нормативная часть. — 422 с. — ISBN 5-93838-002-2
- Т. 2: Информативная часть (Приложения). — 374 с. — ISBN 5-93838-003-0
Ссылки[править | править вики-текст]
- The Open Group
- IEEE Std 1003.1™-2008
- Введение в POSIX’ивизм
- The Portable Application Standards Committee
- Текст Единой спецификации «Юникс» (очередной версии ISO/IEC 9945 в разработке).
| Стандарты The Open Group | |
|---|---|
| ARM · CDE · CLI · CMPI · DCE · DRDA · LDAP · Motif · SUS (POSIX) · X11 |

