Операционные системы - статьи

         

Объекты стандартизации и структура стандарта


Если говорить кратко, то объектами стандартизации POSIX.1 являются имена и семантика. Более конкретно, речь идет о следующем.

  • Имена интерфейсных функций. Стандартизовано 357 функций, причем 107 функций взяты из стандартных Си-библиотек (математические, обработка строк, ввод/вывод и др.); эти функции считаются частью стандарта POSIX.1, однако их полное описание содержится в стандарте на язык программирования Си [3].
  • Имена системных типов данных. Эти имена имеют суффикс _t.
  • Имена заголовочных файлов, а также минимальный состав этих файлов.
  • Имена общесистемных глобальных переменных (например, errno).
  • Символьные имена кодов ошибок, которые могут быть установлены при отработке функций. Эти имена начинаются с буквы E (EPERM, ENOTEMPTY и т.д.).
  • Имена конфигурационных констант. Эти имена имеют префикс _POSIX_.
  • Символьные имена номеров сигналов; эти имена имеют префикс SIG. В дополнение к 20 "традиционным" сигналам (SIGABRT, SIGALRM и др.) стандартизированы сигналы реального времени, номера которых должны занимать некоторый сплошной диапазон от SIGRTMIN до SIGRTMAX включительно, содержащий не менее RTSIG_MAX номеров.
  • Символьные имена, соответствующие значениям отдельных аргументов некоторых функций (например, аргумент cmd функции fcntl() может принимать значения F_DUPFD, F_GETFD, F_GETLK и т.д.).
  • Имена макросов, констант, битовых флагов, переменных окружения.
  • Основное содержание стандарта - семантика интерфейсных функций. Важно отметить, что стандарт описывает лишь часть функций, встречающихся в реальной операционной системе, но даже описание этого подмножества занимает около 400 страниц (нормативная часть).

    В целом стандарт состоит из двух больших частей примерно одинакового объема. Первая половина - нормативная часть - содержит требования и рекомендации стандарта (18 разделов), вторая - информативная часть - содержит Приложения, в которых приводится список литературы, комментарии и разъяснения к нормативной части, состав заголовочных файлов, пример профиля ("проекции") стандарта (для Дании), характеристики и методика измерения производительности наиболее важных функций, а также описание дополнительных интерфейсных функций для работы с файлами в реальном времени; ожидается, что в следующих редакциях стандарта эти функции будут включены в нормативную часть.

    Представление о том, какие именно виды услуг операционной системы охватываются стандартом, дает врезка "Краткое содержание разделов стандарта".



    Содержание раздела