Схемы УДС

Цель данной версии стандарта состоит в том, чтобы минимизировать дополнительную работу для разработчиков прикладных программ. Тем не менее, поскольку каждая историческая реализация стандарта неизбежно подвергается изменению, пусть даже незначительному, прикладным программам также неизбежно предстоит изменяться, чтобы прийти в соответствие. Концептуально этот стандарт описывает набор фундаментальных услуг, необходимых для эффективной разработки прикладных программ. Доступ к этим услугам обеспечивался определением интерфейса, с использованием языка программирования Си, процессора командного языка, и стандартных сервисных программ (утилит), которые устанавливают стандартную семантику и синтаксис интерфейсов. Этот стандарт предназначен для всех, кто по роду своей деятельности связан с операционными системами, базирующимся на UNIX.

Цель состояла также в том, чтобы продвинуть мобильность прикладных программ по всей области применения операционной системы UNIX, развивая ясный, последовательный и однозначный стандарт для спецификации интерфейса переносимой операционной системы, основанной на документации системы UNIX. Этот стандарт систематизирует все существующие типовые формулировки операционной системы UNIX. Стандарт был разработан для того, чтобы программа, написанная и транслированная для исполнения в одной конкретной версии ОС, могла быть также транслирована для другой версии ОС. Однако этот стандарт не гарантирует, что используемый код (объектный) даст соответствующий результат при другой ОС, нежели той, для которой программа была транслирована, даже при идентичном аппаратном обеспечении.

Разработчики данного стандарта стремились добиться возможности наиболее широкого применения данного стандарта ко всему диапазону уже существующих и потенциальных операционных систем. Однако существовало согласованное мнение по поводу того, какой набор функций, типов, определений (дефиниций) и концепций предназначен для формирования того интерфейса, который является общим для большинства исторически сложившихся типов реализации ПС. Предыдущие стандарты и их модификации выявили множество несогласованных областей, что в основном устранено в данном варианте. Пересмотренное издание стандарта стремится минимизировать количество изменений, касающихся реализаций, которые соответствуют более ранним версиям одобренных стандартов, необходимых для приведения их в соответствие с настоящим стандартом.

Новую версию международных стандартов POSIX составляют аннотированные ниже четыре части стандартов ISO 9945:1-4:2003 — ИТ. Интерфейсы переносимых операционных систем. Ч. 1. Базовые определения. Ч. 2. Системные интерфейсы. Ч. 3. Команды управления и сервисные программы. Ч. 4. Обоснование.

Стандарт ISO 9945-1:2003 — содержит основные концептуальные определения и подробные пояснения методов реализации интерфейсов для обеспечения мобильности компонентов и комплексов программ, общее для всех томов оглавление стандарта, в том числе сервисные соглашения и определения заголовков языка Си. В большом разделе — концепция — изложены: базовые директории; файловая иерархия; сетевое взаимодействие; измерение времени и синхронизация; процессы повторного использования компонентов; политика очередей и применение семафоров. Далее выделены разделы.

— писание синтаксиса и организации данных в файлах для системных интерфейсов и взаимодействия с терминалами;

— характеристики переносимых компонентов, язык кодирования, описание файлов;

— локальные переменные, определения и грамматика;

— описание переменных окружения, интернационализация переменных;

— контекстно-независимый синтаксис представления характеристик переменных компонентов, определения регулярных выражений, генерация требований, базис и грамматика выражений, продленные выражения;

— структура директорий, файлов и устройств, типы терминалов;

— базовые интерфейсы типов терминалов, параметры возможных устройств;

— конвенция и руководство по синтаксису аргументов утилит;

— содержание функций прототипов, описание символьных констант, макросы, препроцессоры, типы определений, форматы входов.

Стандарт ISO 9945-2:2003 — Системные интерфейсы — уточняет и детализирует: концепцию переносимости и принципы ее обеспечения путем унификации интерфейсов прикладных программ с операционными системами, функции обслуживания, ориентированные на язык программирования Си, функциональные вопросы, в том числе мобильность, обработка ошибок, и устранение ошибок. Он содержит три крупных раздела:

— введение;

— содержание основной информации;

— системные интерфейсы.

Документ предназначен для разработчиков приложений, в которых необходимо обеспечить мобильность программ и данных, для разработчиков и пользователей операционных систем, а также для покупателей вычислительной техники и программных средств. Основная цель стандарта — унифицировать интерфейсы приложений и связи с окружением ядра операционной системы путем формализации описаний внутренних и внешних интерфейсов на базовом языке программирования Си. Концептуально представлено описание синтаксиса и семантики взаимосвязей, используемых при проектировании переносимых прикладных программ. Унификация ориентирована на версии UNIX, а также на другие операционные системы, совместимые по интерфейсам с версиями UNIX. Разработчики стандарта стремились предусмотреть все потенциально возможные функции взаимодействия прикладных программ с ядром ОС на различных аппаратных платформах, в автономных, сетевых и распределенных информационных системах. Для этого представлено содержание 1123 интерфейсов, включающих: описание, типовую структуру, возможные ошибки, примеры и обоснование каждого.

Языково-ориентированные услуги и интерфейсы для языка Си в стандарте состоят из двух частей: ядра, взаимодействующего с ядром операционной системы на языке Си, и расширения для взаимодействия с прикладными программами, реализованными на различных языках. Первоначальная, жесткая ориентация стандартов POSIX на ОС UNIX в последующем изменилась и расширилась на любые операционные среды, обеспечивающие реализацию концепции открытых систем. Отмечается целесообразность применения для взаимодействия с внешней средой концепции и совокупности стандартов, являющихся развитием базовой эталонной модели взаимосвязи открытых систем (ВОС) — ISO 7498.

В третьей части стандарта ISO 9945-3:2003 — Основные команды управления и сервисные программы (Shell and utilities) — изложено конкретное представление команд операционной системы и утилит, обеспечивающих унифицированное взаимодействие с мобильными прикладными программами, определения для стандартного источника кодового уровня интерфейса командного интерпретатора («shell») и стандартные утилиты для прикладных программ. Стандарт содержит четыре раздела:

— введение;

— описание языка управления;

— пакет обслуживания окружения;

— сервисные программы — утилиты.

Цель этой части стандарта — конкретизировать интерфейсы прикладных программ на уровне команд, для интерпретатора командного языка, и полный набор сервисных программ — утилит. Он специфицирует интерфейсы операционных систем на уровне программных текстов и кодов. Стандартизированный командный язык Shell — средство для подготовки небольших мобильных процедур и их быстрой интерактивной отладки. В развитой среде возможно объединять команды в цепочки с фильтрацией промежуточных результатов. Каждая утилита содержит: описание структуры; применение; операнды; входные файлы; окружение. Факультативные утилиты расширяют возможности для пользователей мобильных приложений по связи с внешним окружением. В терминах языка Си (стандарт ISO 9899:1990) описаны языково-независимые услуги интерфейсов для переносимых приложений и связи с внешним окружением при представлении интерфейсов приложений на различных языках высокого уровня. Команды и утилиты содержат конкретные механизмы на уровне операторов для выполнения операций: сравнения, вывода на печать и на экран файлов, редактирования файлов, вычисления выражений, сортировки данных, определения очередности исполнения сигналов и доступа к информации о среде. Можно выделить:

— утилиты среды взаимодействия программ;

— управляющие утилиты, поддерживающие мобильность программ и связь внешних пользователей с асинхронными терминалами;

— утилиты для взаимодействия комплексов программ;

— языково-независимые системные услуги для прикладных программ на нескольких языках программирования высокого уровня.

Четвертая часть стандарта ISO 9945-4:2003 — Обоснование — содержит группу из пяти крупных приложений:

— обоснование базовых определений — приложение А;

— обоснование системных интерфейсов — приложение В;

— обоснование команд управления и сервисных программ-утилит — приложение С;

— рассмотрение переносимости — приложение D;

— рассмотрение субпрофилей — приложение Е.

В перечисленных приложениях подробно разъясняются базовые положения стандартов POSIX, обосновываются формализованные в них решения. Пространные пояснения, которые не слишком вписывались в остальные части документа, содержат исторические комментарии по тексту стандарта, разъяснения причин, по которым те или иные свойства, признаки и компоненты были включены в стандарт или были отвергнуты разработчиками.

Параллельно с подготовкой и внедрением новых четырех стандартов группы POSIX действуют и применяются представленные ниже, утвержденные базовые международные стандарты, углубляющие некоторые возможности и облегчающие создание мобильных приложений. В стандарте ISO 14252:1996 — Руководство по POSIX окружению открытых систем (OSE) — изложена идеология и модель создания мобильных программных средств, которое детализирует для пользователей модель комплекса стандартов POSIX, а также взаимодействующих с ними стандартов де-юре, де-факто и спецификаций, необходимых для создания переносимых приложений. Модель отражает принципы построения интерфейсов прикладных программ с платформой — операционной системой, через которую осуществляется взаимодействие с компонентами внешнего окружения. Считается, что прикладные программы непосредственно не взаимодействуют с внешним окружением, а связаны с ним только через операционную систему. Разработка приложений предполагается в кросс-режиме, то есть платформа разработки — инструментальная может не совпадать с платформой исполнения (применения) программ (объектной — целевой). Результат компиляции программы на инструментальной платформе может быть перенесен для исполнения на целевую платформу.

Определяющими являются два интерфейса между тремя базовыми компонентами: между прикладными программами и платформой — операционной системой (API) и между платформой и внешним окружением (EEI). Определены общие функции — услуги платформы для этих взаимодействий. Внешнее окружение включает компоненты человеко-машинного взаимодействия с пользователями, компоненты информационного взаимодействия с внешними устройствами ЭВМ и с компонентами, обеспечивающими коммуникацию с внешней средой. Эти интерфейсы и услуги более детально формализованы соответствующими стандартами POSIX.

Стандарт включает также общие принципы и руководство по формированию и описанию сложных согласованных профилей и по обеспечению непротиворечивости их интерфейсов с внешним окружением;

— поддерживающие непосредственное взаимодействие прикладных программ с пользователями, регламентирующие интерфейсы с виртуальными терминалами и графические системы;

— обеспечивающие административное управление файловыми системами и различными, в том числе распределенными, базами данных;

— регламентирующие телекоммуникацию и обмен данными на верхних уровнях эталонной модели ВОС;

— обеспечивающие аттестацию и безопасность применения информационных технологий, программ и данных в соответствии со стандартами ВОС и криптографии.

Стандарт ISO 13210:1998 — Методы тестирования для оценки соответствия стандартам POSIX — содержит общую методологию тестирования для проверки соответствия интерфейсов прикладных программ стандартам POSIX. Представлены принципы формирования наборов тестов и предлагается методика развития системы тестов для контроля создаваемых приложений на соответствие ISO 9945. В методе тестирования выделены: подготовка тестов; процедуры тестирования; оформление документов, удостоверяющих соответствие стандартам. Определены и кратко представлены три основных уровня сложности тестирования: исчерпывающий; достаточно полный; оценочный — для установления общих характеристик качества. Подчеркивается, что предлагаемые методы не гарантируют абсолютное соответствие стандартам, так как исчерпывающее тестирование невозможно по техническим и экономическим причинам. Приводятся рекомендации по:

— классификации тестовых сценариев и утверждений;

— подготовке описаний детерминированных тестов и тестов для проверки структурных конструкций;

— кодированию и представлению результатов тестирования во взаимосвязи с исходными тестами;

— формированию удостоверения о соответствии интерфейсов прикладных программ стандартам POSIX.

В стандартах POSIX даются ссылки на многие стандарты ISO, ANSI и де-факто. В результате полная совокупность стандартов, поддерживающих проектирование мобильных программ в разных классах открытых систем, возрастает. В конкретных прикладных разработках каждый раз необходима только некоторая, относительно небольшая часть из них, которую целесообразно выделять в соответствующий проблемно-ориентированный профиль.

Радиальная система (рис. 134, а) естественно возникла из узла до­рог. Она удобна для сообщений окраин с центром, но не создает непосредственных связей между окраинами. Поэтому 'радиальная система магистралей может сохраняться лишь 'в небольших городах. При раз­растании города возникает 'потребность в создании кольцевых или диа­гональных связей между его 'районами, минуя центр.

Радиально-кольцевая система (рис- 134, б) исторически сложилась из узла дорог и колец крепостных стен. Будучи весьма удобной для •связи окраин с центром, она вместе с тем имеет следующие недостатки в условиях современного крупного города: сосредоточивает мощные по­токи движения в центре, пропуская через него транзит, лимитирует транспортную работу радиальных магистралей пропускной способно­стью центра; затрудняет сообщения между жилыми районами по направлениям хорд. Поэтому при реконструкции больших городов с радиально-кольцевой системой планировки обычно возникает потребность внести в эти систему ряд существенных коррективов -- подвергнуть пе­репланировке центр путем рассредоточения его узлов, пробивки новых магистралей, переустройства его сетей механического транспорта и, кроме того, создать хордовые магистрали для связи между районами города в обход центра.

«Веерная» система планировки (рис. 134, в) представляет собой как бы половину радиально-кольцевой системы. От городов, возникших у переправ через реки—;на более высоком, незатопляемом берегу, рас­ходились веером дороги. По мере роста города образовывались полу­-

кольцевые улицы—нередко вдоль крепостных стен. Веерная система, встречается также в приморских портовых городах, расположенных на берегах глубокого залива, и в приморских курортах, где улицы сходят­ся к месту расположения парка, пляжа, и санаторно-лечебных учрежде­ний.

Прямоугольная система планировки (рис. 134, г) получила боль­шое развитие в XIX 'в. в ряде «молодых» городов и по растущим окраинам старых. При своем бесспорном достоинстве—удобстве для застрой­ки—она имеет следующие недостатки: рассредоточивает городское дви­жение по всей сети улиц, не стимулируя выделения магистралей; за­трудняет сообщения по диагональным направлениям.

При перепланировке городов с прямоугольной системой уличной сети нередко возникает потребность в пробивке магистралей диаго­нального направления (рис. 134, д).

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

Свободная система планировки с ее криволинейными или изломан­ными трассами улиц характерна для планов многих городов средневе­ковья. Высокий коэффициент непрямолинейности делает ее неудобной для крупных городов. Поэтому при их реконструкции нередко прихо­дится пробивать новые прямые магистрали. Однако для небольших го­родов и в особенности при сложном рельефе местности рационально продуманная система свободной плакировки может оказаться наиболее приемлемой формой построения сети улиц (но. разумеется, не в виде подражания планам средневековых городов). Новые системы свободной планировки с искусным использованием особенностей рельефа получи­ли большое распространение в строительстве небольших городов и по­селков Англии и США (рис. 134, ж).


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: