Реферат: Разработка отказоустойчивой операционной системы реального времени для вычислительных систем с максимальным рангом отказоустойчивости

<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»">Введение

          В течение многих лет приложения на базе ОС реального временииспользовались во встроенных системах специального назначения, а с недавнеговремени они стали применяться повсюду, от бортовых систем управления ЛА, добытовых приборов.

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

<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»">В первом случае на передний план встаетвопрос о наличии специальных средств обеспечения отказоустойчивостивычислительных систем, основной особенностью (и достоинством) которых являетсяотсутствие какого-либо единственного ресурса, выход из строя которого приводитк фатальному отказу всей системы.

<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»">Таким образом, объектом исследования врамках сетевой отказоустойчивой технологии становится ОСРВ — управляющеепрограммное обеспечение особого типа, которое используется для организацииработы встроенных приложений, для которых характерны ограниченность ресурсовпамяти, невысокая производительность, а также требования гарантированноговремени отклика, высокого уровня готовности и наличия средств автомониторинга.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Даннаядипломная работа посвящена разработке специализированной распределеннойоперационной системы реального времени для отказоустойчивых ВС с рангомотказоустойчивости

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»;mso-ansi-language:EN-US">N<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»">(<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»;mso-ansi-language: EN-US">N<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">-1),что означает способность системы функционировать даже в том случае, еслипроизойдут отказы всех элементов системы за исключением одного. Для полногоосвещения выбранной темы были поставлены следующие задачи:

1.<span Times New Roman"">   

2.<span Times New Roman"">   

N-1,выделить основные модули операционной системы, функциональные требования к ними алгоритмы работы.

3.<span Times New Roman"">   

4.<span Times New Roman"">   

5.<span Times New Roman"">   

6.<span Times New Roman"">   

TMS320c30, рассмотретьспецифические проблемы и сложности при осуществлении портации.

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

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

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

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

<span Arial",«sans-serif»;mso-fareast-font-family:«Times New Roman»; mso-bidi-font-family:«Times New Roman»;mso-ansi-language:RU;mso-fareast-language: RU;mso-bidi-language:AR-SA">

Специальнаячасть

<span Arial",«sans-serif»;mso-fareast-font-family:«Times New Roman»; mso-bidi-font-family:«Times New Roman»;mso-ansi-language:RU;mso-fareast-language: RU;mso-bidi-language:AR-SA">
<span Arial",«sans-serif»;mso-fareast-font-family:Arial">1.<span Times New Roman"">   <span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Операционныесистемы реального времени<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">.

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

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

1.1.<span Times New Roman"">  Описание и общиетребования к системам реального времени.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

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

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

Назовем системойреального времени (СРВ) аппаратно-программный комплекс, реагирующий впредсказуемые времена на непредсказуемый поток внешних событий.

Это определениеозначает, что:

·<span Times New Roman"">                

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Система должна успеть отреагировать на событие, произошедшеена объекте, в течение времени, критического для этого события. Величинакритического времени для каждого события определяется объектом и самимсобытием, и, естественно, может быть разной, но время реакции системы должнобыть предсказано (вычислено) при создании системы. Отсутствие реакции впредсказанное время считается ошибкой для систем реального времени.

·<span Times New Roman"">                

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Система должна успевать реагировать на одновременно происходящиесобытия. Даже если два или больше внешних событий происходят одновременно,система должна успеть среагировать на каждое из них в течение интерваловвремени, критического для этих событий.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Различаютсистемы реального времени двух типов — системы жесткого реального времени исистемы мягкого реального времени.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Системыжесткого реального времени не допускают никаких задержек реакции системы ни прикаких условиях, так как:

·<span Times New Roman"">                

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">результаты могут оказаться бесполезны в случае опоздания,

·<span Times New Roman"">                

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">может произойти катастрофа в случае задержки реакции,

·<span Times New Roman"">                

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">стоимость опоздания может оказаться бесконечно велика.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Примерысистем жесткого реального времени — бортовые системы управления, системыаварийной защиты, регистраторы аварийных событий.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Системымягкого реального времени характеризуются тем, что задержка реакции не критична,хотя и может привести к увеличению стоимости результатов и снижению производительностисистемы в целом.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Основноеотличие между системами жесткого и мягкого реального времени можно выразитьтак: система жесткого реального времени никогда не опоздает с реакцией насобытие, система мягкого реального времени — не должна опаздывать с реакцией насобытие.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Тогдаоперационная система реального времени -  это такая ОС, которая можетбыть использована для построения систем жесткого реального времени. Это определениевыражает отношение к ОСРВ как к объекту, содержащему необходимые инструменты,но также означает, что этими инструментами еще необходимо правильновоспользоваться.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

1.2. Параметры ОСРВ

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">1.2.1. Времяреакции системы

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Почтивсе производители систем реального времени приводят такой параметр, как времяреакции системы на прерывание (interrupt latency).

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Всамом деле, если главным для системы реального времени является ее способностьвовремя отреагировать на внешние события, то такой параметр, как время реакциисистемы является ключевым.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">События,происходящие на объекте, регистрируются датчиками, данные с датчиков передаютсяв модули ввода-вывода (интерфейсы) системы. Модули ввода-вывода, получивинформацию от датчиков и преобразовав ее, генерируют запрос на прерывание вуправляющем компьютере, подавая ему тем самым сигнал о том, что на объектепроизошло событие. Получив сигнал от модуля ввода-вывода, система должназапустить программу обработки этого события.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Интервалвремени — от события на объекте и до выполнения первой инструкции в программеобработки этого события и является временем реакции системы на события.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Обычновремя реакции систем на прерывание составляет порядка 4-10 мкс.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">1.2.2. Времяпереключения контекста

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Воперационные системы реального времени заложен параллелизм, возможностьодновременной обработки нескольких событий, поэтому все ОСРВ являютсямногозадачными (многопроцессными, многонитиевыми).

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Контекстзадачи  это набор данных, задающихсостояние процессора при выполнении задачи. Обычно совпадает с наборомрегистров, доступных для изменения прикладной задаче.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Припереключении задач (процессов) необходимо:

<span Arial",«sans-serif»;mso-fareast-font-family:Arial">1.<span Times New Roman"">   

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">корректноостановить работающую задачу;

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">дляэтого

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">а)выполнить инструкции текущей задачи, уже загруженные в процессор, но еще невыполненные;

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">б)сохранить в оперативной памяти регистры текущей задачи;

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">2.найти, подготовить и загрузить затребованную задачу;

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">3.запустить новую задачу, для этого

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">а)восстановить из оперативной памяти регистры новой задачи (сохраненные ранее,

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">еслиона до этого уже работала);

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">б)загрузить в процессор инструкции новой задачи.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Каждаяиз этих стадий вносит свой вклад в задержку при переключении контекста.Поскольку любое приложение реального времени должно обеспечить выдачурезультата в заданное время, то эта задержка должна быть мала, детерминированаи известна. Это число является одной из важнейших характеристик ОСРВ. Обычновремя переключения контекста в ОСРВ составляет 10-20 мкс.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-fareast-font-family:Arial">1.2.3.<span Times New Roman"">  <span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Размеры системы

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Длясистем реального времени важным параметром является размер системы исполнения,а именно суммарный размер минимально необходимого для работы приложениясистемного набора (ядро, системные модули, драйверы и т. д.). Хотя, надопризнать, что с течением времени значение этого параметра уменьшается, тем неменее, он остается важным и производители систем реального времени стремятся ктому, чтобы размеры ядра и обслуживающих модулей системы были невелики.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

1.3.<span Times New Roman"">      Механизмы реального времени

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Важнымпараметром при оценке ОСРВ является набор инструментов, механизмов реальноговремени, предоставляемых системой.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»"> 

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">1.3.1. Системаприоритетов и алгоритмы диспетчеризации

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Базовымиинструментами разработки сценария работы системы являются система приоритетовпроцессов (задач) и алгоритмы планирования (диспетчеризации) ОСРВ.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Вмногозадачных ОС общего назначения используются, как правило, различныемодификации алгоритма круговой диспетчеризации, основанные на понятиинепрерывного кванта времени («time slice»), предоставляемого процессудля работы. Планировщик по истечении каждого кванта времени просматриваеточередь активных процессов и принимает решение, кому передать управление,основываясь на приоритетах процессов (численных значениях, им присвоенных).Приоритеты могут быть фиксированными или меняться со временем — это зависит оталгоритмов планирования в данной ОС, но рано или поздно процессорное времяполучат все процессы в системе.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Алгоритмыкруговой диспетчеризации неприменимы в чистом виде в ОСРВ. Основной недостаток- непрерывный квант времени, в течение которого процессором владеет только одинпроцесс. Планировщики же ОСРВ имеют возможность сменить процесс до истечения«time slice», если в этом возникла необходимость. Один из возможныхалгоритмов планирования при этом «приоритетный с вытеснением». МирОСРВ отличается богатством различных алгоритмов планирования: динамические,приоритетные, монотонные, адаптивные и пр., цель же всегда преследуется одна — предоставить инструмент, позволяющий в нужный момент времени исполнять именнотот процесс, который необходим.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">1.3.2. Механизмымежзадачного взаимодействия

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Другойнабор механизмов реального времени относится к средствам синхронизациипроцессов и передачи данных между ними. Для ОСРВ характерна развитость этихмеханизмов. К таким механизмам относятся: семафоры, мьютексы, события, сигналы,средства для работы с разделяемой памятью, каналы данных (pipes), очередисообщений. Многие из подобных механизмов используются и в ОС общего назначения,но их реализация в ОСРВ имеет свои особенности — время исполнения системных вызововпочти не зависит от состояния системы, и в каждой ОСРВ есть по крайней мереодин быстрый механизм передачи данных от процесса к процессу.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-fareast-font-family:Arial">1.3.3.<span Times New Roman"">  <span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Средства дляработы с таймерами

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Такиеинструменты, как средства работы с таймерами, необходимы для систем с жесткимвременным регламентом, поэтому развитость средств работы с таймерами — необходимый атрибут ОСРВ. Эти средства, как правило, позволяют:

·<span Times New Roman"">                

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">измерять и задавать различные промежутки времени (от 1 мкс ивыше),

·<span Times New Roman"">                

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">генерировать прерывания по истечении временных интервалов,

·<span Times New Roman"">                

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">создавать разовые и циклические будильники

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Здесьописаны только базовые, обязательные механизмы, использующиеся в ОСРВ. Крометого, почти в каждой ОСРВ можно найти целый набор дополнительных, специфическихтолько для нее механизмов, касающийся системы ввода-вывода, управленияпрерываниями, работы с памятью. Каждая система содержит также ряд средств,обеспечивающих ее надежность: встроенные механизмы контроля целостности кодов,инструменты для работы с таймерами.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

1.4.<span Times New Roman"">  Классы системреального времени

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»">Монолитная архитектура

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">ОСРВ с монолитнойархитектурой можно представить в виде (рис. 1.1)

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">прикладного уровня: состоит из работающих прикладных процессов;

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">системного уровня: состоит из монолитного ядра операционнойсистемы, в котором можно выделить следующие части: интерфейс между приложениямии ядром (API), собственно ядро системы, интерфейс между ядром и оборудованием(драйверы устройств).

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»"><img src="/cache/referats/14434/image002.gif" v:shapes="_x0000_i1025">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Рис.1.1. ОСРВ с монолитной архитектурой

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Интерфейсв таких системах играет двойную роль:

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">1.управление взаимодействием прикладных процессов и системы,

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">2.обеспечение непрерывности выполнения кода системы (т.е. отсутствие переключениязадач во время исполнения кода системы).

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Основнымпреимуществом монолитной архитектуры является ее относительная быстрота работыпо сравнению с другими архитектурами. Однако, достигается это, в основном, засчет написания значительных частей системы на ассемблере.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Недостаткимонолитной архитектуры.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">1.Системные вызовы, требующие переключения уровней привилегий (отпользовательской задачи к ядру), должны быть реализованы как прерывания илиспециальный тип исключений. Это сильно увеличивает время их работы.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">2.Ядро не может быть прервано пользовательской задачей (non-preemptable). Этоможет приводить к тому, что высокоприоритетная задача может не получитьуправления из-за работы низкоприоритетной.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">3.Сложность переноса на новые архитектуры процессора из-за значительныхассемблерных вставок.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">4.Негибкость и сложность развития: изменение части ядра системы требует егополной перекомпиляции.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»">Модульная архитектура (на основемикроядра)

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Модульнаяархитектура появилась, как попытка убрать интерфейс между приложениями и ядроми облегчить модернизацию системы и перенос ее на новые процессоры.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Теперьмикроядро играет двойную роль(рис 1.2):

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">1.управление взаимодействием частей системы (например, менеджеров процессов ифайлов),

<span Arial",«sans-serif»;mso-fareast-font-family:Arial">2.<span Times New Roman"">        

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">обеспечение непрерывности выполнения кода системы (т.е. отсутствиепереключения задач во время исполнения микроядра).

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»"><img src="/cache/referats/14434/image004.gif" v:shapes="_x0000_i1026">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Рис.1.2. ОСРВ на основе микроядра

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Недостаткимодульной архитектуры фактически те же, что и у монолитной. Проблемы перешли суровня интерфейса на уровень микроядра. Системный интерфейс по-прежнему недопускает переключения задач во время работы микроядра, только сократилосьвремя пребывания в этом состоянии, проблемы с переносимостью микроядрауменьшились (в связи с сокращением его размера), но остались.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»">Объектная архитектура на основеобъектов-микроядер

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">В этойархитектуре интерфейс между приложениями и ядром отсутствует вообще (рис. 1.3).Взаимодействие между компонентами системы (микроядрами) и пользовательскимипроцессами осуществляется посредством обычного вызова функций, поскольку исистема, и приложения написаны на одном языке (обычно C++). Это обеспечиваетмаксимальную скорость системных вызовов.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»"><img src="/cache/referats/14434/image006.gif" v:shapes="_x0000_i1027">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Рис.1.3. Пример объектно-ориентированной ОСРВ

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Фактическоеравноправие всех компонент системы обеспечивает возможность переключения задачв любое время. Объектно-ориентированный подход обеспечивает модульность,безопасность, легкость модернизации и повторного использования кода.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Вотличие от предыдущих систем, не все компоненты самой операционной системыдолжны быть загружены в оперативную память. Если микроядро уже загружено длядругого приложения, то оно повторно не загружается, а используется код и данныеуже имеющегося микроядра. Все эти приемы позволяют сократить объем требуемойпамяти. Поскольку разные приложения разделяют одни микроядра, то они должныработать в одном адресном пространстве. Следовательно, система не можетиспользовать виртуальную память и тем самым работает быстрее (так какисключаются задержки на трансляцию виртуального адреса в физический).

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">1.5.Обзор некоторых коммерческих ОСРВ

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Операционнаясистема OS-9<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»; mso-ansi-language:EN-US">OS

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">-9 фирмы <span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»;mso-ansi-language:EN-US">Microware<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»"> относится кклассу <span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»; mso-ansi-language:EN-US">UNIX<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">-подобных операционных систем реального времени. По своейсути <span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»; mso-ansi-language:EN-US">OS<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">-9 является многозадачной ОС с вытесняющей приоритетнойдиспетчеризацией, допускающая возможность многопользовательской работы.Объектно-ориентированный модульный дизайн системы позволяет конфигурироватьсистему в очень широком диапазоне от встраиваемых систем до больших сетевыхприложений. Согласно этой концепции все функциональные компоненты <span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»; mso-ansi-language:EN-US">OS<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">-9, включая ядро, иерархические файловые менеджеры, драйвераустройств и т. д., реализованы в виде независимых модулей. Все модулиоперационной системы позиционно-независимы и могут быть размещены в ПЗУ, атакже могут удаляться из системы в процессе ее функционирования без какой-либо повторнойинсталляции или перекомпоновки. На рисунке 1.4 приведена упрощенная структурнаясхема операционной системы.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»; font-weight:normal">Структура операционной системы

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»;mso-ansi-language: EN-US;font-weight:normal">OS<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»;font-weight:normal">-9

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»"><img src="/cache/referats/14434/image008.gif" v:shapes="_x0000_i1028">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»; font-weight:normal">Рис. 1.4

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">.<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»;font-weight:normal"> Структура операционной системы <span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»; mso-ansi-language:EN-US;font-weight:normal">OS<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»;font-weight:normal">-9

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Ядрообеспечивает основной системный сервис, включая управление процессами ираспределение ресурсов.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Основныехарактеристики:

<span Arial",«sans-serif»;mso-fareast-font-family:Arial">1.<span Times New Roman"">        

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Архитектура: на основе микроядра

<span Arial",«sans-serif»;mso-fareast-font-family:Arial">2.<span Times New Roman"">        

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Стандарт: собственный, вызовы похожи на UNIX

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Свойствакак ОСРВ:

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Многозадачность: многопроцессность

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Многопроцессорность: да

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Уровней приоритетов: 65535

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Время реакции: 3 мкс

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Планирование: приоритетное, FIFO, специальный механизмпланирования; preemptive ядро <span Arial",«sans-serif»; mso-fareast-font-family:Arial;mso-ansi-language:EN-US">3.<span Times New Roman"">        <span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">ОС<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»;mso-ansi-language:EN-US"> <span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»">разработки<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»;mso-ansi-language: EN-US"> (host): UNIX/Windows

<span Arial",«sans-serif»;mso-fareast-font-family:Arial;mso-ansi-language: EN-US">4.<span Times New Roman"">        

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Процессоры<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»;mso-ansi-language:EN-US"> (target):Motorola 68xxx, Intel 80x86, ARM, MIPS, PowerPC

<span Arial",«sans-serif»;mso-fareast-font-family:Arial">5.<span Times New Roman"">        

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Линии связи host-target: последовательный канал и ethernet

<span Arial",«sans-serif»;mso-fareast-font-family:Arial">6.<span Times New Roman"">        

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Минимальный размер: 16Kb

<span Arial",«sans-serif»;mso-fareast-font-family:Arial">7.<span Times New Roman"">        

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Средства синхронизации и взаимодействия: разделяемая память,сигналы, семафоры, события.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Операционнаясистема VxWorks<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»; mso-ansi-language:EN-US">VxWorks

<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»"> относится к операционным системам«жесткого» реального времени. Характерной чертой этой ОС является то, благодаряее развитым сетевым возможностям, вся разработка ПО ведется на инструментальномкомпьютере (хост-системе) с использованием кросс-средств для последующегоисполнения на целевой машине под управлением <span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»;mso-ansi-language: EN-US">VxWorks<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">.

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Отличительная черта системы — возможность управлять работойсложных комплексов реального времени и бортовых устройств, использующихпроцессорные элементы различных поставщиков. Три основных компонента данной ОСРВ образуют единую интегрированную среду: собственно ядро системы, управляющеепроцессором; набор средств межпроцессорного взаимодействия; комплекткоммуникационных программ для работы с Ethernet или последовательными каналамисвязи.

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Основные характеристики:

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">1.Архитектура: монолитная

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">2.Стандарт: собственный и POSIX 1003

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">3.Свойства как ОСРВ:

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Многозадачность: многопроцессность и многозадачность

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Многопроцессорность: да

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Уровней приоритетов: 256

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Время реакции: 4 мкс

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Время переключения контекста: 15 мкс

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Планирование: приоритетное; preemptive ядро

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»; mso-ansi-language:EN-US">4.

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">ОС<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»;mso-ansi-language:EN-US"> <span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»">разработки<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»;mso-ansi-language: EN-US"> (host): UNIX/Windows

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»; mso-ansi-language:EN-US">5.

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Процессоры<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»;mso-ansi-language:EN-US"> (target):Motorola 68xxx, Intel 80x86, Intel 80960, PowerPC, SPARC, Alpha, MIPS, ARM

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">6.Линии связи

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»;mso-ansi-language:EN-US">host<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»">-<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»;mso-ansi-language: EN-US">target<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">:последовательный канал, <span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»;mso-ansi-language:EN-US">ethernet<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">, шина <span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»; mso-ansi-language:EN-US">VME<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">7.Минимальный размер: 22Kb

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">8.Средства синхронизации и взаимодействия: семафоры POSIX 1003, очереди, сигналы…

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Операционнаясистема QNX<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Операционнаясистема

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»;mso-ansi-language:EN-US">QNX<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»"> канадской компании <span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»; mso-ansi-language:EN-US">QNX<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»"> <span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»;mso-ansi-language: EN-US">Software<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»"> <span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»;mso-ansi-language:EN-US">System<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»"> <span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»; mso-ansi-language:EN-US">Ltd<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">. построена на основе иерархической микроядернойархитектуры. Упрощенная структурная схема этой ОС приведена на рисунке 1.5.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»"><img src="/cache/referats/14434/image010.gif" v:shapes="_x0000_i1029">

<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»;font-weight:normal">Рис.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»;font-weight:normal">1.5.Микроядерная структура <span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»;mso-ansi-language:EN-US;font-weight: normal">QNX<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»; font-weight:normal">

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Микроядро

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»; mso-ansi-language:EN-US">QNX<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»"> выполняет следующие функции:

-<span Times New Roman"">   

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">межпроцессорный обмен;

-<span Times New Roman"">   

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">низкоуровневый сетевой обмен;

-<span Times New Roman"">   

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">диспетчеризация задач;

-<span Times New Roman"">   

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">низкоуровневая обработка прерываний.

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Основныехарактеристики:

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">1.Архитектура: на основе микроядра

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">2.Стандарт: POSIX 1003

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">3.Свойства как ОСРВ:

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Многозадачность: POSIX 1003 (многопроцессность и многозадачность)

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Многопроцессорность: да

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Уровней приоритетов: 32

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Время реакции: 4,3 мкс

·<span Times New Roman"">               

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Время переключения контекста: 13 мкс

·<span Times New Roman"">               

<spa
еще рефераты
Еще работы по программному обеспечению