Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Операционные системы реального времени и технологии разработки кроссплатформенного программного обеспечения. Ч.4. Учебное пособие
.pdf
3.2. Специализированные ОС РВ
51
3. Переносимость.
4. Низкие требования к аппаратным ресурсам.
Модульность системы (см. рис. 17) позволяет включать только необходимые элементы в установочный образ, что очень важно для систем с
ограниченными ресурсами.
Рис. 17. Структура системы с модульной архитектурой
Конфигурируемость системы позволяет задавать параметры для каждой подсистемы в отдельности и выполнять тонкую настройку для различных задач.
Переносимость позволяет менять аппаратную платформу, тип микропроцессора или микроконтроллера, а также состав периферийных
устройств в зависимости от требований.
Не следует забывать, что основной сферой применения ОС Embox являются встраиваемые системы и элементы «умной» электроники. Здесь на
практике более часто применяются архитектуры микропроцессоров, отличные от x86. Самой популярной на сегодняшний момент является архитектура ARM. Так что перенос ОС на совместимый микропроцессор или микроконтроллер – достаточно простая задача. Кроме того, мы можем добавлять новые платформы так же легко потому, что ядро системы и все основное программное обеспечение написано на языке Си, так же, как и средства
разработки, отладки и сопровождения программного обеспечения.
ОС РВ Embox дает возможность гибко конфигурировать собственное
ядро, адаптируя системы к конкретно выполняемой задаче. Этот процесс
может быть настолько удачным, что могут быть даже сформированы отдельные стратегии сборки. В некоторых случаях, например, мы можем создавать образы ядра с необходимым минимумом интерфейсов.

3. Классификация ОС РВ
52
ChorusOS [20]
Является операционной системой реального времени с микроядерной
архитектурой (см. рис. 18). Она реализует процедуру распределенной обработки данных, а также реализует общие инструменты, используемые для
расширения интерфейсов стандартной ОС. Разработка была начата в 1979 г.
Французской компанией INRIA. В 1980-е гг. Chorus оставался одним из
двух старейших ядер ОС РВ, наряду с микроядром Mach. Со временем основной акцент развития ОС сместился от распределенных ОСРВ к встраиваемым системам.
Рис. 18. Архитектура ChorusOS

3.2. Специализированные ОС РВ
53
Микроядро функционирует в режиме реального времени. Модульная
архитектура поддерживает масштабируемость и позволяет динамически
конфигурировать систему и приложения. Система широко применяется в
телекоммуникационной индустрии. Архитектура ОС ChorusOS является не
только микроядерной, но и слоистой. Многослойность ChorusOS основана
на компонентах (component-based).
Микроядерные системы типа ChorusOS функционируют в реальном
времени, а их модульная структура поддерживает масштабируемость. Эти
два фактора позволяют нам динамически конфигурировать состав и структуру системы и множество работающих приложений.
Следует отметить, что ChorusOS сейчас широко применяется в телекоммуникационном оборудовании.
Рис. 19. «Слои» ChorusOS
Микроядро ChorusOS (см. рис. 19) содержит весь необходимый для работы ОС набор компонентов:
1. интерфейс микроядра и так называемый актор (единицу загрузки
приложения) KERN;
2. вспомогательную библиотеку ядра и заголовочные файлы;
3. менеджер приватных данных;
4. менеджер постоянной памяти;
5. система вызовов ядра и инструменты поддержки реального
времени.

3. Классификация ОС РВ
54
RTC [21]
Система RTC (Real Time Craft) выпускается фирмой GSI-TECSI (Paris,
France). Основные характеристики:
− тип: host-target (RTC) и self-hosted (RTC/PC);
− архитектура: монолитная;
− стандарт: SCEPTRE (RTC) и собственный (RTC/PC);
− многозадачность: многопроцессностъ и многозадачность;
− многопроцессорность: да (RTC); нет (RTC/PC);
− планирование: приоритетное, FIFO; preemptive ядро;
− ОС разработки (host): UNIX/Windows;
− линии связи host-target: Ethernet;
− минимальный размер: 1,5 Kb (RTC); 4 Kb (RTC/PC);
− средства синхронизации и взаимодействия: SCEPTRE (семафоры,
сигналы, почтовые ящики);
− средства разработки: компилятор С, отладчик Watcom TRC.
JavaOS [22]
Представляет собой эффективную ОС, разработанную для глубокой
поддержки среды исполнения Java на сетевых устройствах. Виртуальная
машина Java выполняется на микропроцессорах без непосредственного
участия резидентной ОС. Архитектура JavaOS отражена на рис. 20.
JavaOS обеспечивает экономию ресурсов за счет сокращения затрат на
администрирование. JavaOS обладает БД, которая состоит из Java-объектов
с уникальными именами и которая обеспечивает динамическую реконфигурацию. JavaOS обладает мобильностью и имеет многослойную архитектуру. Каждый слой операционной системы может быть обновлен независимо от всех остальных.
Как видно из рис. 20, JavaOS фактически состоит из микроядра и некоторой «оболочки», в которую входят такие инструменты, как: диспетчер
оперативной памяти, комплект драйверов устройств, виртуальная машина
Java, система компиляции на лету, подсистемы Graphics и Windowing для
отрисовки пользовательского интерфейса, комплект классов и средств поддержки сетевых интерфейсов и коммуникационных протоколов, а также
интерфейсов прикладного программирования (API) Java.
Платформы, на которых работало ядро JavaOS – ARM, PowerPC,
SPARC, StrongARM, IA-32. В отличие от большинства практических

3.2. Специализированные ОС РВ
55
операционных систем, которые написаны на Си, полностью написана на
Java, от ядра до графической и оконной системы, реализующей AWT API;
в том числе все драйверы устройств создавались на Java и выполнялись в
JVM. Приложения для JavaOS разрабатывались не только для телефонов,
но и для телевизионных приставок, сетевых устройств, банкоматов. Также
система поставлялась с JavaStation. В конце 1990-х гг. JavaSoft предоставила лицензии более, чем 25 производителям, включая Oracle, Acer, Xerox,
Toshiba и Nokia.
Рис. 20. Многослойная архитектура JavaOS
VRTX [23]
Операционная система реального времени VRTX была выпущена в
США в компании Ready Systems. Это, фактически, первая система, которая
была сертифицирована соответствующими органами и может быть эффективно внедрена для использования в проектах, элементы которых являются
критическими для жизни и здоровья людей. Например, некоторые версии
VRTX использовались в самолетах «Боинг».
В качестве основных характеристик VRTX можно назвать следующие:
− монолитная архитектура;
− проприетарный (собственный, коммерческий) стандарт распро-
странения;

3. Классификация ОС РВ
56
− поддерживаемые типы многозадачности: многопроцессностъ и
многопоточность;
− поддержка многопроцессорности отсутствует;
− доступно 255 уровней приоритетов;
− приоритетное планирование задач;
− главные процессы операционной системы (хосты): UNIX/Windows;
− поддерживаемые типа микропроцессоров (таргеты): Motorola стар-
ших семейств, Intel 80x86, PowerPC;
− интерфейсы связи между хостами и таргетами построены по прин-
ципам последовательного канала, сети Ethernet и некоторых проприетарных технологий типа шины VME;
− минимальный размер системы определяется доступными моду-
лями дистрибутива, которые входят в сборку (на самом деле имеются различные варианты ядер, ориентированные на системы разного масштаба;
например, одна из модификаций, требующая до 8 Кb ПЗУ и 1 Кb ОЗУ, предназначена для сотовых телефонов и других подобных устройств);
− средства взаимодействия между процессами и их синхронизации
стандартны для современных ОС, например семафоры, очереди, сигна-
лы, и др.
RTX [24]
RTX, фактически, является расширением для известной ОС Windows
серии NT. Она применяется на практике с целью разработки программных
продуктов для управления системами с высокой скоростью и с детерминированным временем реакции.
Подсистема RTX оказывается встроенной в обычное ядро Windows NT. Для реализации основных функций применяется WIN API 32. Основные процессы ядра RTX не являются защищенными друг от друга. Они
выполняются как драйвера устройства. Преимущество такой реализации
состоит в переключении контекста с высокой скоростью, а недостаток –
в небезопасности со стороны конфиденциальности.
RTX обладает следующей функциональностью:
1. создание процессов реального времени, управление которых про-
исходит при помощи соответствующего собственного планировщика;
2. взаимодействие между процессами (в том числе и реального вре-
мени, в совокупности со стандартными процессами Win32);

3.2. Специализированные ОС РВ
57
3. прямой доступ к ОЗУ и ПЗУ внешних устройств;
4. взаимодействие с таймерами и счетчиками системы;
5. контроль работоспособности и времени реакции системы;
6. любое приложение RTX может реализовывать на практике стандарт-
ные и специфические функции Win32 в рамках API реального времени.
TinyOS [25]
Возникновение уникальной концепции беспроводной связи Motes
стало одной из причин разработки ОС TinyOS. Motes представляет собой
практическую реализацию гипотезы «smart-dust», что означает «распыленную разумность». Она применяется для отслеживания передвижений и местоположения потенциального или условного противника в специализированных оборонных системах. За счёт использования TinyOS достигается
энергетическая эффективность и высокий уровень абстракции. Также
TinyOS характеризуется довольно развитой компонентной моделью, благодаря которой происходит реализация механизмов параллельного выполнения задач в условиях крайне ограниченных ресурсов.
Архитектура TinyOS объединяет планировщик задач и компонентный
граф. Интерфейс компонента TinyOS состоит из двух множеств. «Верхнее»
множество и «нижнее» множество. Верхнее множество для своего функционирования требует нижнего множества. Каждое из этих множеств содержит описания команд и событий. В вырожденном виде это стандартные
синхронные и асинхронные процессы.
Система состоит из следующих взаимосвязанных компонент: наборов
программных команд и системных обработчиков событий. Обработчики
инкапсулируют фреймы фиксированного размера и множества простых потоков. Потоки и обработчики событий выполняются во фрейме и оказывают воздействие на его состояние. При этом отдельный компонент определяет команды, которые он использует, и события, о которых он сигнализирует системе «выше» по уровню. Такие декларации применяются в процессе конфигурирования системы. Каждый процесс создает свои слои компонентов. Каждый слой компонентов взаимодействует с компонентами более высокого уровня для формирования нисходящего потока команд. Каждый нижележащий уровень обращается к своему собственному «более высокому» уровню посредством сигналов или событий.

3. Классификация ОС РВ
58
Windows CE [26]
Представляет собой компонентную, многозадачную, многопоточную,
многоплатформенную ОС с поддержкой реального времени. Разработчикам
доступны около 600 компонентов, на основе которых могут быть разработаны собственные образы ОС с уникальной функциональностью.
Данный тип операционной системы может работать на устройствах с
минимальным объёмом памяти. Например, базовое ядро Windows CE может работать в системе с 32 КБ оперативной памяти, а для работы графического интерфейса может понадобиться от 5 МБ.
Приложения Windows CE состоят в каждый момент времени из одного
базового процесса и одного или нескольких порожденных потоков. Мы можем понимать процесс Windows CE как единичный экземпляр выполняющейся программы. При помощи системы разделяемых и управляемых процессов, пользователь, фактически, имеет возможность работать в нескольких приложениях одновременно – так обеспечивается, как минимум, кажущаяся многозадачность для пользователя. На самом деле, как ОС с действительно вытесняющей многозадачностью, Windows CE способно поддерживать несколько одновременно выполняющихся процессов.
Данный тип операционной системы в реальности поддерживает вытесняющую мультизадачность. Она делает это за счет одновременного выполнения нескольких потоков одним базовым процессом. Если процесс имеет
более одного выполняющегося потока, то ОС переключается с высокой скоростью с одного потока на другой, создавая тем самым эффект того, что
потоки выполняются параллельно.
Базовые службы ОС обеспечивают выполнение задач различных уровней: от низкоуровневых задач управления процессами, до высокоуровневых задач управления потоками и памятью.
Базовые драйверы устройств являются частью базовых служб ОС
Windows CE (см. рис. 21).
Базовые службы ОС Windows CE дают приложениям возможность доступа к ресурсам ЭВМ и к таким средствам, как: память, файловые системы,
процессы, и потоки. Кроме того, такие службы могут быть использованы с
целью управления и мониторинга ресурсов, принимающих участие в процессе функционирования приложения.

3.3. Отечественные ОС РВ
59
Рис. 21. Архитектура Windows CE
Windows CE осуществляет поддержку двух общепринятых файловых
систем:
1. управляемые драйверами файловые системы;
2. зарегистрированные файловые системы.
3.3. Отечественные ОС РВ
В Российской Федерации практически отсутствуют отечественные
коммерчески доступные или свободно распространяемые операционные
системы, предназначенные для применения во встраиваемых вычислительных системах.
Имеющиеся на рынке решения, как правило, являются проприетарными продуктами компаний, используемыми либо в рамках одного предприятия, либо в рамках одной архитектуры.
Решения, изначально создаваемые для широкого применения, в основном, находятся в состоянии разработки в рамках НИР.
Багет [27]
ОС РВ Багет разработана в НИИСИ РАН. Основное назначение – применение в качестве основной операционной системы для ЭВМ серии

3. Классификация ОС РВ
60
«Багет». Основная аппаратная базы – микропроцессоры MIPS архитектуры
R3081. Также разработчики указывают на возможность применения с про-
цессорами и системами КОМДИВ32, RM7000, КОМДИВ64, КОМДИВ128,
а также Intel.
Используется с целью разработки ПО для систем (программно-аппа-
ратных комплексов), которые функционируют в реальном времени.
При разработке данной ОС РВ разработчики руководствовались сле-
дующими основополагающими принципами:
1. система соответствует современным международным стандартам;
2. ОС имеет характеристики мобильности;
3. система имет возможность масштабироваться;
4. система использует микроядра;
5. система использует объектно-ориентированный подход;
6. система подразумевает кросс-разработку программного обе-
спечения.
Осуществляется поддержка следующих аппаратных платформ:
1. в том числе сетевые устройства сети Ethernet с учетом протоколов
NFS, FTP и Telnet. Для Intel-версии ОС сущствует поддержка ISA- и
PCI-карт фирмы Realtek;
2. ОС поддерживает накопительные устройства – классические гиб-
кие магнитные диски (флоппи-дисководы) и жёсткие диски.
Соответствие стандартам:
1. POSIX 1003.1, стандарт на мобильные операционные системы
(программный интерфейс);
2. стандарт С, описывающий язык и библиотеки языка Си;
3. графическая подсистема X Window System (клиент-сервер).
Для того чтобы выполнить разработку ПО под данную ОС, необхо-
димо использовать две ЭВМ:
1. программы для ОС РВ Багет разрабатываются на инструменталь-
ной ЭВМ с UNIX-подобной ОС;
2. целевая ЭВМ, на которой установлена ОС РВ Багет, и для которой
разрабатывается ПО.
За счёт использования специализированных средств разработки име-
ется возможность транслировать программу на языке Си и языке Ассемблер.
Кроме того, можно отлаживать программу, загруженную в целевую машину, удаленно с другой ЭВМ.
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
