POSIX

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск


POSIX (англ. Portable Operating System Interface for Unix — Переносимый интерфейс операционных систем Unix) — набор стандартов, описывающих интерфейсы между операционной системой и прикладной программой. Стандарт создан для обеспечения совместимости различных 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:

По большей части POSIX-совместимые[править | править исходный текст]

Официально не сертифицированные как POSIX-совместимые, но соответствующие по большей части:

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-подобное окружение. Для Windows XP, Windows Services for UNIX должны быть установлены для POSIX-совместимости. UNIX-подсистема встроена в Enterprise и Ultimate редакции Windows Vista и не может быть добавлена в другие редакции.
  • UWIN от AT&T Research обеспечивает POSIX поверх Win32 API.

См. также[править | править исходный текст]

Примечания[править | править исходный текст]

Литература[править | править исходный текст]

Ссылки[править | править исходный текст]