POSIX (BSD) API

POSIX (BSD) API

Эта часть API наиболее полно соответствует API ОС UNIX, относящихся к ветви BSD (BSD, FreeBSD, NetBSD и другие).[5] Ее наименование можно было бы сузить до «BSD API», так как описанный далее набор API System V также регламентируется POSIX, но мы будем использовать именно термин «POSIX API», следуя терминологии фундаментальной книги У. Стивенса [2]. Эквивалентом названного выше для native API ThreadCreate() здесь будет выступать pthread_create().

Именно на API этого слоя и будет строиться последующее изложение и приводимые примеры кода (параллельно с вызовами этого API мы будем для справки кое-где указывать имена комплиментарных им вызовов native API), за исключением случаев использования тех возможностей QNX, которые не имеют эквивалентов в POSIX API. Как раз все, что будет выражено в этом API далее по тексту, может быть перенесено на все UNIX-подобные операционные системы, о чем мы и говорили выше.

Примечание

Самый ранний стандарт POSIX известен как IEEE 1003.1–1988 и, как следует из его названия, относится к 1988 году (если точнее, то ему предшествовал рабочий вариант под названием IEEEIX 1986 года, когда термин POSIX еще не был «придуман»). Более поздняя редакция его развития, IEEE 1003.1–1996, наиболее широко известна как «стандарт POSIX», иногда называемый POSIX.1. Набор стандартов POSIX находится в постоянном развитии и расширении и к настоящему времени включает в себя набор более чем из 30 автономных стандартов.

Для целей операционных систем реального времени возникла потребность определить отдельные механизмы особыми стандартами, на семь из которых ссылаются наиболее часто: 1003.1a, 1003.1b, 1003.1c, 1003.1d, 1003.1j, 1003.21, 1003.2h. Например:

1003.1a (OS Definition) — определяет базовые интерфейсы ОС;

1003.1b (Realtime Extensions) — описывает расширения реального времени, такие как модель сигналов реального времени, диспетчеризация по приоритетам, таймеры, синхронный и асинхронный ввод-вывод, IPC-механизмы (семафоры, разделяемая память, сообщения);

1003.1c (Threads) — определяет функции поддержки потоков, такие как управление потоками, атрибуты потоков, примитивы синхронизации (мьютексы, условные переменные, барьеры и др., но не семафоры), диспетчеризация.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

(3.23) Отключение подсистем POSIX и OS2.

Из книги Win2K FAQ (v. 6.0) автора Шашков Алексей

(3.23) Отключение подсистем POSIX и OS2. POSIX является стандартом взаимодействия операционных систем, он включен в Windows 2000 по требованию правительства США, а подсистема OS2 нужна для запуска соответствующих приложений. Обычные пользователи вряд ли когда будут задействовать эти


Posix

Из книги UNIX: взаимодействие процессов автора Стивенс Уильям Ричард

Posix Название Posix образовано от «Portable Operating System Interface», что означает приблизительно «интерфейс переносимых операционных систем». Это не один стандарт, а целое семейство, разработанное Институтом инженеров по электротехнике и радиоэлектронике (Institute for Electrical and Electronics Engineers


ГЛАВА 2 Posix IPC

Из книги Разработка приложений в среде Linux. Второе издание автора Джонсон Майкл К.

ГЛАВА 2 Posix IPC 2.1. Введение Из имеющихся типов IPC следующие три могут быть отнесены к Posix IPC, то есть к методам взаимодействия процессов, соответствующим стандарту Posix:? очереди сообщений Posix (глава 5);? семафоры Posix (глава 10);? разделяемая память Posix (глава 13).Эти три вида IPC


Взаимные исключения Posix

Из книги QNX/UNIX [Анатомия параллелизма] автора Цилюрик Олег Иванович

Взаимные исключения Posix В листинге А.19 приведены глобальные переменные и функция main пpoгрaммы, измеряющей быстродействие взаимных исключений Posix.Листинг А.19. Глобальные переменные и функция main для взаимных исключений Posix//bench/incr_pxmutex1.с1  #include "unpipc.h"2  #define MAXNTHREADS 1003  int


Именованные семафоры Posix

Из книги Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ автора Борри Хелен

Именованные семафоры Posix В листинге А.26 приведен текст функции main, измеряющей быстродействие именованных семафоров Posix, а в листинге А.25 — соответствующая функция incr.Листинг А.25. Увеличение общего счетчика с использованием именованного семафора Posix//bench/incr_pxsem2.c40 void


6.2. Интерфейсы POSIX

Из книги Linux программирование в примерах автора Роббинс Арнольд

6.2. Интерфейсы POSIX 6.2.1. Обязательные типы POSIX POSIX описывает некоторые определения типов в заголовочном файле <sys/types.h>, которые используются для многих аргументов и возвращаемых значений. Эти определения типов важны, потому что стандартные типы языка С могут быть разными


Отличия от POSIX

Из книги Операционная система UNIX автора Робачевский Андрей М.

Отличия от POSIX Если следовать POSIX-стандарту, то некоторые из атрибутов невозможно переопределить до фактического создания этого стандарта (их можно изменить позже в самом коде потока, но иногда это не совсем правильное решение). Все эти возможности относятся к


POSIX

Из книги UNIX: разработка сетевых приложений автора Стивенс Уильям Ричард

POSIX В Linux и UNIX самый простой путь установления переменных окружения - добавить их определения в общесистемный профиль значений по умолчанию.Пользователь root также может:* выдать команды setenv() из командной строки wu командного скрипта;* для временного использования


POSIX

Из книги Разработка ядра Linux автора Лав Роберт

POSIX Linux, UNIX и другие платформы POSIX более предпочтительны, чем Windows, если требуется высокая безопасность. Технологии безопасности этих платформ являются продуманными и очень понятными в реализации. Безопасность файловой системы и надежный доступ присущи требованиям


Восстановление в POSIX

Из книги автора

Восстановление в POSIX Пользователь, который был текущим на сервере, когда был вызван Менеджер серверов для выполнения копирования - root, firebird или interbase - является владельцем файла копии на уровне файловой системы, что позволяет читать его только этим пользователем.Когда вам


10.6. Сигналы POSIX

Из книги автора

10.6. Сигналы POSIX API POSIX основан на API sigvec() из BSD 4.2 и 4.3. С небольшими изменениями этот API можно было отнести к возможностям API как V7, так и System V Release 3. POSIX сделал эти изменения и переименовал API sigaction(). Поскольку интерфейс sigvec() широко не использовался, мы не будем его описывать.


IEEE и POSIX

Из книги автора

IEEE и POSIX В 1980 году была создана инициативная группа под названием /usr/group с целью стандартизации программного интерфейса UNIX, т. е. формального определения услуг, предоставляемых операционной системой приложениям. Решение этой задачи упростило бы переносимость приложений


История POSIX

Из книги автора

История POSIX Слово «POSIX» представляет собой сокращение от «Portable Operating System Interface» (интерфейс переносимой операционной системы). POSIX — целое семейство стандартов, разрабатываемых организацией IEEE (Institute of Electrical and Electronics Engineers — Институт инженеров по электротехнике и


Семантика сигналов POSIX

Из книги автора

Семантика сигналов POSIX Сведем воедино следующие моменты, относящиеся к обработке сигналов в системе, совместимой с POSIX.? Однажды установленный обработчик сигналов остается установленным (в более ранних системах обработчик сигналов удалялся каждый раз по


API, POSIX и библиотека С

Из книги автора

API, POSIX и библиотека С Обычно прикладные программы не разрабатываются с непосредственным использованием системных вызовов, при этом используются программные интерфейсы приложений (Application Programing Interface, API). Это является важным, так как в таком случае нет необходимости в