POSIX
POSIX® (англ. Portable Operating System Interface for Unix — Переносимый интерфейс операционных систем Unix) — набор стандартов, описывающих интерфейсы между операционной системой и прикладной программой. Стандарт создан для обеспечения совместимости различных UNIX-подобных операционных систем и переносимости прикладных программ на уровне исходного кода, но может быть использован и для не-Unix систем. Серия стандартов POSIX была разработана комитетом 1003 IEEE. Международная организация по стандартизации (ISO) совместно c Международной электротехнической комиссией (IEC) приняли данный стандарт (POSIX) под названием ISO/IEC 9945.
Название «POSIX» было предложено Ричардом Столлманом. Введение в 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]
Полностью POSIX-совместимые
Полностью соответствующие одной из версий стандарта POSIX.
- A/UX
- BSD/OS
- HP-UX
- IBM AIX
- INTEGRITY
- IRIX
- LynxOS
- Mac OS X
- IPhone OS
- Minix
- MPE/iX
- OpenSolaris
- OpenVMS
- QNX
- RTEMS
- Solaris
- UnixWare
- velOSity
- VxWorks
По большей части POSIX-совместимые
Официально не сертифицированные как POSIX-совместимые, но соответствующие по большей части.
- BeOS
- FreeBSD
- GNU/Linux (большинство дистрибутивов — см. LSB)
- NetBSD
- Nucleus RTOS
- OpenBSD
- RTEMS
- Sanos
- SkyOS
- Syllable
- VSTa
- Symbian OS
POSIX для Windows
- Cygwin – обеспечивает частичное соответствие POSIX для некоторых продуктов Microsoft Windows.
- Microsoft POSIX subsystem, необязательная подсистема Windows.
- Microsoft Windows Services for UNIX 3.5 – обеспечивает полное соответствие POSIX для некоторых продуктов Microsoft Windows. Операционные системы на базе Windows NT до Windows 2000 имели POSIX уровень встроенный в ОС, и UNIX Services for Windows предоставляло UNIX-подобное окружение. Для Windows XP, Windows Services for UNIX должны быть установлены для POSIX совместимости. UNIX подсистема встроена в Enterprise и Ultimate редакции Windows Vista, и не могут быть добавлены в другие редакции.
- UWIN от AT&T Research обеспечивает POSIX поверх Win32 API.
Примечания
- ↑ POSIX® 1003.1 Frequently Asked Questions (FAQ Version 1.12) (англ.) (2006-02-02). Проверено 5 марта 2008.
- ↑ POSIX. Standards. IEEE.
Литература
- System application program interface (API) [C Language] : ISO/IEC 9945-1, ANSI/IEEE Std 1003.1 //New York, NY: IEEE, 1996, ISBN 1-55937-573-6
- Информационная технология — интерфейс мобильной операционной системы (POSIX). Часть 1: Интерфейс прикладных программ (API) [Язык программирования С]. ISBN 5-93838-001-4 // М.: Издание НИИСИ РАН, 1998, 1999, [1]
- Том 1. Введение и нормативная часть. ISBN 5-93838-002-2
- Том 2. Информативная часть (Приложения) ISBN 5-93838-003-2
См. также
Ссылки
- The Open Group
- Введение в POSIX’ивизм
- The Portable Application Standards Committee
- Текст Единой спецификации «Юникс» (очередной версии ISO/IEC 9945 в разработке).
ПО | Это незавершённая статья о программном обеспечении. Вы можете помочь проекту, исправив и дополнив её. |
root@mybox:~# | Это незавершённая статья о системах класса UNIX. Вы можете помочь проекту, исправив и дополнив её. |
Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....