Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Отличия от операционных систем общего назначения

Читайте также:
  1. I. Осознание потребности в реорганизации системы
  2. I. Система прерываний программ в ПК
  3. II ступень общего среднего образования
  4. II. Определение возможного способа разработки системы.
  5. II. Северные лагеря особого назначения
  6. II. Система зажигания
  7. II. Система ролей.

Многие операционные системы общего назначения также поддерживают указанные выше сервисы. Однако ключевым отличием сервисов ядра ОСРВ является детерминированный, основанный на строгом контроле времени, характер их работы. В данном случае под детерминированностью понимается то, что для выполнения одного сервиса операционной системы требуется временной интервал заведомо известной продолжительности. Теоретически это время может быть вычислено по математическим формулам, которые должны быть строго алгебраическими и не должны включать никаких временных параметров случайного характера. Любая случайная величина, определяющая время выполнения задачи в ОСРВ, может вызвать нежелательную задержку в работе приложения, тогда следующая задача не уложится в свой квант времени, что послужит причиной для ошибки.[8]

В этом смысле операционные системы общего назначения не являются детерминированными. Их сервисы могут допускать случайные задержки в своей работе, что может привести к замедлению ответной реакции приложения на действия пользователя в заведомо неизвестный момент времени. При проектировании обычных операционных систем разработчики не акцентируют своё внимание на математическом аппарате вычисления времени выполнения конкретной задачи и сервиса. Это не является критичным для подобного рода систем.[8]

 

Системы жёсткого и мягкого реального времени

Операционные системы реального времени иногда делят на два типа — системы жесткого реального времени и системы мягкого реального времени.[5]

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

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

Системы жёсткого реального времени не допускают задержек реакции системы, так как это может привести к:

§ потере актуальности результатов

§ большим финансовым потерям

§ авариям и катастрофам

Если не выполняется обработка критических ситуаций либо она происходит недостаточно быстро, система жёсткого реального времени прерывает операцию и блокирует её, чтобы не пострадала надёжность и готовность остальной части системы. Примерами систем жёсткого реального времени могут быть — бортовые системы управления (на самолёте, космическом аппарате, корабле, и пр.), системы аварийной защиты, регистраторы аварийных событий.[6]

Системы мягкого реального времени характеризуются возможностью задержки реакции, что может привести к увеличению стоимости результатов и снижению производительности системы в целом. Примером может служить работа компьютерной сети.[7] Если система не успела обработать очередной принятый пакет, это приведет к остановке на передающей стороне и повторной посылке (в зависимости отпротокола). Данные при этом не теряются, но производительность сети снижается.

Основное отличие систем жёсткого и мягкого реального времени можно охарактеризовать так: система жёсткого реального времени никогда не опоздает с реакцией на событие, система мягкого реального времени — не должна опаздывать с реакцией на событие.[7]

Обозначим операционной системой реального времени такую систему, которая может быть использована для построения систем жёсткого реального времени. Это определение выражает отношение к ОСРВ как к объекту, содержащему необходимые инструменты, но также означает, что эти инструменты ещё необходимо правильно использовать.[6]

Большинство программного обеспечения ориентировано на «мягкое» реальное время. Для подобных систем характерно:

§ гарантированное время реакции на внешние события (прерывания от оборудования);

§ жёсткая подсистема планирования процессов (высокоприоритетные задачи не должны вытесняться низкоприоритетными, за некоторыми исключениями);

§ повышенные требования к времени реакции на внешние события или реактивности (задержка вызова обработчика прерывания не более десятков микросекунд, задержка при переключении задач не более сотен микросекунд)

Классическим примером задачи, где требуется ОСРВ, является управление роботом, берущим деталь с ленты конвейера. Деталь движется, и робот имеет лишь маленький промежуток времени, когда он может её взять. Если он опоздает, то деталь уже не будет на нужном участке конвейера, и следовательно, работа не будет выполнена, несмотря на то, что робот находится в правильном месте. Если он подготовится раньше, то деталь ещё не успеет подъехать, и он заблокирует ей путь.

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

Система разработки:

Система разработки – это набор средств, обеспечивающих создание и отладку приложений реального времени.

.

1. Время реакции системы.

Почти все производители СРВ приводят такой параметр, как время реакции системы на прерывание, который представляет собой интервал времени от момента возникновения события на объекте до выполнения первой инструкции в программе. Для различных ОСРВ время реакции системы на предприятие лежит в диапазоне от 4 до 8 мкс.

2. Время переключения контекста.

В ОСРВ заложен параллелизм – возможность одновременной обработки нескольких событий. Поэтому все ОСРВ являются многозадачными (многопроцессорными, многонитевыми). Для того, чтобы уметь оценивать накладные расходы при обработке параллельных событий необходимо знать время, которое система затрачивает на передачу управления от процесса к процессу, т.е. время переключения контекста. Для различных ОСРВ это время лежит в диапазоне от 90 до 170 мкс.

3. Размеры системы.

Для СРВ важным параметром является размер системы, а именно суммарный размер минимально необходимого для работы приложения системного набора (ядро, системные модули, драйверы и т.д.). Пр-ры: размер ядра ОСРВ OS-9 – 22Кбайт, а VxWORKS – 16 Кб.

4. Возможность исполнения системы из ПЗУ. Это свойство ОСРВ – одно из базовых. Оно позволяет создавать компактные встречные СРВ повышенной надежности с ограниченным энергопотреблением без внешних накопителей.

Для реализации параметров ОСРВ в заданных пределах используется следующие???:

1. система приоритетов и алгоритмы диспечеризации.

2.??? межзадачного взаимодействия.

3. средства для работы с таймерами.

 

5.

Процесс проектирования конкретной системы реального времени начинается с тщательного изучения объекта. Разработчики проекта исследуют объект, изучают возможные события на нем, определяют критические сроки реакции системы на каждое событие и разрабатывают алгоритмы обработки этих событий. Существует, пока только в теории, идеальная системы разработки приложений реального времени, которая разрабатывается на языке событий объекта. Она носит название «Система, управляемая критическими сроками». При этом с каждым описанием события связывается два параметра:

временной интервал – критическое время обслуживания данного события

адрес подпрограммы его обработки

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

6. 3. Классы систем реального времени Количество операционных систем реального времени, несмотря на их специфику, очень велико. Сама специфика применения операционных сис­тем реального времени требует гарантий надежности, причем гарантий, в том числе и юридических - этим, видимо, можно объяснить тот факт, что среди некоммерческих систем реального времени нет сколько-нибудь попу­лярных.

Среди коммерческих систем реального времени можно выделить груп­пу ведущих систем - по объемам продаж и по популярности. Это системы: VxWorks, OS-9, pSOS, LynxOS, QNX, VRTX. Различают следующие классы СРВ:

- исполнительные системы реального времени;

- ядра реального времени;

- UNIX'ы реального времени.

Наиболее ярким представителем систем этого класса является опера­ционная система VxWorks. Область применения - компактные системы реального времени с хорошими временами реакций.

Несмотря на всю неоднозначность отношения традиционных пользо­вателей систем реального времени ко всему, что связано с "Microsoft", необ­ходимо констатировать факт: появился новый класс операционных систем реального времени - а именно расширения реального времени для Windows NT. Результаты независимых тестирований этих продуктов показывают, что они могут быть в перспективе использованы для построения систем жестко­го реального времени после соответствующей доработки. Область примене­ния расширений реального времени - большие системы реального времени, где требуется визуализация, работа с базами данных, доступ в Интернет и пр.

7. Расширения реального времени для Windows NT. После появления Windows NT, сразу несколько фирм объявили о создании расширений реаль­ного времени для Windows NT. Этот означает, что подобные продукты были востребованы, что и подтверждает динамика их рыночного развития. Появ­ление в свое время UNIX'ов реального времени означало ни что иное, как попытку применить господствующую программную технологию для созда­ния приложений реального времени. Появление расширений реального вре­мени для Windows NT имеет те же корни, ту же мотивацию. Огромный набор прикладных программ под Windows, мощный программный интерфейс

WIN32, большое количество специалистов, знающих эту систему. Соблазни­тельно было получить в системе реального времени все эти возможности.

Несмотря на то, что Windows NT создавалась как сетевая операцион­ная система, и сочетание слов "Windows NT" и "реальное время" многими воспринимается как нонсенс, в нее при создании были заложены элементы реального времени. Она имеет - двухуровневую систему обработки прерыва­ний (ISR и DPC), классы реального времени (процессы с приоритетами 16-32 планируются в соответствии с правилами реального времени). Причина по­явления этих элементов кроется в том, что у разработчиков Windows NT за плечами был опыт создания классической для своего времени операционной системы реального времени RSX11М (для компьютеров фирмы DEC).

Анализ возможностей Windows NT показывает, что эта система не го­дится для построения систем жесткого реального времени (система непред­сказуема - время выполнения системных вызовов и время реакции на преры­вания сильно зависит от загрузки системы; система велика; нет механизмов защиты от зависаний). Поэтому даже в системах мягкого реального времени Windows NT может быть использована, только при выполнении целого ряда рекомендаций и ограничений.

Разработчики расширений пошли двумя путями. Они использовали яд­ра классических операционных систем реального времени в качестве допол­нения к ядру Windows NT. Таковы решения фирм "LP Eleknroniks" и "Radisys". В первом случае параллельно с Windows NT (на одном компьюте­ре) работает операционная система VxWorks, во-втором случае - InTime. Кроме того, предоставляется набор функций для связи приложений реально­го времени и приложений Windows NT. Вот как, например, это выглядит у LP Elektroniks: вначале стандартным образом загружается Windows NT, за­тем с помощью специального загрузчика загружается операционная система VxWorks, распределяя под себя необходимую память Windows (что в дальнейшем позволяет избежать конфликтов памяти между двумя ОС). После этого полной "хозяйкой" на компьютере уже становится VxWorks, отдавая процессор ядру Windows NT только в случаях, когда в нем нет надобности для приложений VxWorks. В качестве канала для синхронизации и обмена данными между Windows NT и VxWorks служат псевдодрайверы TCP/IP в обеих системах. Технология использования двух систем на одном компьюте­ре следующая - работу с объектом выполняет приложение реального време­ни, передавая затем результаты приложениям Windows NT для обработки, передачи в сеть, архивирования.

Второй вариант расширений реального времени фирмы VenturCom выглядит иначе: здесь сделана попытка "интегрировать" реальное время в Windows NT путем исследования причин задержек и зависаний и устранения этих причин с помощью подсистемы реального времени. Решения фирмы "VenturCom" (RTX 4.2) базируются на модификациях уровня аппаратных аб­стракций Windows NT (HAL - Hardware Abstraction Layer) - программного слоя, через который драйверы взаимодействуют с аппаратурой. Модифици­рованный HAL и дополнтельные функции (RTAPI) отвечают также за ста­бильность и надежность системы, обеспечивая отслеживание краха Windows NT, зависания приложений или блокировку прерываний. В состав RTX вхо­дит также подсистема реального времени RTSS, с помощью которой Windows NT расширяется дополнительным набором объектов (аналогичным стандартным, но с атрибутами реального времени). Среди новых объектов -нити (потоки, процессы) реального времени, которые управляются специ­альным планировщиком реального времени (256 фиксированных приорите­тов, алгоритм - приоритетный с вытеснением). Побочным результатом RTX является возможность простого создания программ управления устройства­ми, так как среди функций RTAPI есть и функции работы с портами ввода-вывода и физической памятью. Решения VenturCom характерны еще и тем, что они предоставляют для NT возможность конфигурирования Windows NT и создания встроенных конфигураций (без дисков, клавиатуры и монитора, интегратор компонентов - CI).

Несмотря на всю неоднозначность отношения традиционных пользо­вателей систем реального времени ко всему, что связано с "Microsoft", необ­ходимо констатировать факт: появился новый класс операционных систем реального времени - а именно расширения реального времени для Windows NT. Результаты независимых тестирований этих продуктов показывают, что они могут быть в перспективе использованы для построения систем жестко­го реального времени после соответствующей доработки. Область примене­ния расширений реального времени - большие системы реального времени, где требуется визуализация, работа с базами данных, доступ в Интернет и пр.

 


Дата добавления: 2015-12-07; просмотров: 158 | Нарушение авторских прав



mybiblioteka.su - 2015-2024 год. (0.012 сек.)