Разделы презентаций


Операционные системы реального времени

Содержание

Структуры построения операционных системОсновные определения

Слайды и текст этой презентации

Слайд 1Операционные системы реального времени
Ч3

Операционные системы реального времениЧ3

Слайд 2Структуры построения операционных систем
Основные определения

Структуры построения операционных системОсновные определения

Слайд 3 Архитектура ОСРВ. Классы ОСРВ.
Все ОСРВ сегодня являются многозадачными системами.



Задачи делят между собой ресурсы вычислительной системы, в том числе

и процессорное время.

По своей внутренней архитектуре ОСРВ можно условно разделить на:

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

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

Ядра предоставляют пользователю такие базовые функции, как:
планирование и синхронизация задач;
межзадачная коммуникация;
управление памятью, устройствами ввода-вывода и т. п.

Утилиты операционных систем в дополнение к этому обеспечивают:
файловую систему;
сетевую поддержку;
интерфейс с оператором;
взаимодействие системы и управляющего/управляемого оборудования;
другие средства высокого уровня.

объектно-ориентированные ОС.

ОС на основе микроядра и

монолитные ОС,

Архитектура ОСРВ. Классы ОСРВ.Все ОСРВ сегодня являются многозадачными системами. Задачи делят между собой ресурсы вычислительной системы,

Слайд 4Операционную систему в общем случае можно представить как программную среду,

состоящую из ядра, которое постоянно находится в оперативной памяти ЭВМ

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

ОС с монолитным ядром

Рисунок 1 - Принципиальная организация операционной системы ЭВМ

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

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

Слайд 5ОС с монолитным ядром
Прикладной уровень: состоит из работающих прикладных процессов.


Системный уровень: состоит из монолитного ядра ОС, состоящий из:
интерфейса

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

Слайд 6Рисунок 2 - Монолитная структура операционной системы;
все процессы работают последовательно,

нет возможности планировать их выполнение
Пользовательское приложение. Вызывает требуемые сервисные процедуры

у ОС.
Набор сервисных процедур. Реализуют системные вызовы ОС.
Набор утилит. Обслуживают сервисные процедуры.

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

Взаимодействие возможно только с функциями, находящимися на соседних уровнях.

Рисунок 2 - Монолитная структура операционной системы;все процессы работают последовательно, нет возможности планировать их выполнениеПользовательское приложение. Вызывает

Слайд 7Рисунок 3 - Простая структуризация монолитной операционной системы; ядро осуществляет

планирование и выполнение задач
Для каждого системного вызова имеется одна сервисная

процедура.
Утилиты выполняют функции, которые нужны нескольким сервисным процедурам. Это деление процедур на три слоя показано на рисунке 3.

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

Рисунок 3 - Простая структуризация монолитной операционной системы; ядро осуществляет планирование и выполнение задачДля каждого системного вызова

Слайд 8ОС на основе микроядра
Микроядерная архитектура является альтернативой классическому способу построения

операционной системы (с монолитным ядром). Архитектура на основе «микроядра» означает,

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

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

ОС на основе микроядраМикроядерная архитектура является альтернативой классическому способу построения операционной системы (с монолитным ядром). Архитектура на

Слайд 9В привилегированном режиме остается работать только очень небольшая часть ОС,

называемая микроядром.
Микроядро выполняет такие же функции как и в

монолитном ядре:
Во-первых это управление взаимодействием частей системы (например, менеджеров процессов и файлов).
Во-вторых это обеспечение непрерывности выполнения кода системы (т.е. отсутствие переключения задач во время исполнения микроядра).

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

Слайд 10Рисунок 4 - Структура модульной (микроядерной) операционной системы: микроядро обладает

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

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

Каждое микроядро работает в привилегированном режиме и выполняет только минимум функций по управлению аппаратурой:
а) управление адресным пространством оперативной памяти,
б) управление процессами и потоками,
в) средства коммуникации между процессами.
Все остальные сервисы реализуются в адресном пространстве, отличном от пространства ядра.

Рисунок 4 - Структура модульной (микроядерной) операционной системы: микроядро обладает минимальным набором системных утилитМикроядро реализует минимальные базовые

Слайд 11Рисунок 5 - Смена режимов при выполнении системного вызова.
а) классическая

ОС, б) микроядерная ОС.
Недостаток. У модульной архитектуры недостатки аналогичны монолитной

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

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

Многое в обеспечении производительности зависит от функциональных возможностей ядра. Избирательное увеличение функциональности ядра приводит к снижению количества переключений между пользовательским режимом и режимом ядра.

Рисунок 5 - Смена режимов при выполнении системного вызова.а) классическая ОС, б) микроядерная ОС.Недостаток. У модульной архитектуры

Слайд 12Достоинства концепции микроядра.

1. Единообразные интерфейсы. Используются для запросов, генерируемых процессами.

Процессам ненужно различать приложения, выполняемые на уровне ядра и на

пользовательском уровне, так как доступ ко всем службам осуществляется только с помощью передачи сообщений.
2. Расширяемость. Имеется возможность добавлять в ОС новые услуги или сервисы, а также обеспечивать множественную реализацию сервисов в одной и той же функциональной области. Например, можно организовывать несколько различных способов хранения файлов на дисках.
3. Гибкость. В ОC можно не только добавлять новые услуги, но и удалять некоторые из них. Это может потребоваться для получения компактной и эффективной версии. Но если пользователю не требуются некоторые подсистемы, занимающие большие объёмы памяти, он может скомпоновать компактную ОС по своим нуждам.
4. Переносимость. Программный код, который взаимодействует с аппаратными средствами, или большая его часть, находится в микроядре. Поэтому уменьшаются объёмы работ, связанных с переносом ОС на новую аппаратную платформу (процессор).
5. Надёжность. Чем больший код имеет программа, тем труднее её протестировать. Однако небольшое ядро ОС можно тщательно проверить. А небольшое число интерфейсов прикладного программирования позволяет реализовать подсистемы, работающие вне ядра, с достаточно качественным программным кодом. Имея стандартизованный набор интерфейсов, разработчик отдельного приложения не может повлиять на другие системные компоненты.
6. Микроядро способствует поддержке распределенных ОС. Сообщение, которое передается от обслуживаемых сервисов к обслуживающим должно содержать идентификатор запрашиваемой услуги. Если система такова, что все процессы и сервисы обладают в ней уникальными идентификаторами, то на уровне микроядра образуется единый образ системы. Процесс может отправлять сообщение, не зная, на какой именно машине выполняется приложение, к которому он обращается.
Достоинства концепции микроядра.1. Единообразные интерфейсы. Используются для запросов, генерируемых процессами. Процессам ненужно различать приложения, выполняемые на уровне

Слайд 13Объектно-ориентированные ОС
Объектно-ориентированные операционные системы (ОООС) строятся на основе объектов-микроядер. Такой

подход хорошо функционирует среди объектно-ориентированных ОС.
В этой архитектуре API

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

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

Объектно-ориентированные ОСОбъектно-ориентированные операционные системы (ОООС) строятся на основе объектов-микроядер. Такой подход хорошо функционирует среди объектно-ориентированных ОС. В

Слайд 14Отличительные признаки ОООС

ОООС присущи следующие отличительные признаки:
Объектная архитектура. Основная сущность

в системе - объект, поэтому архитектура всей системы является совокупностью

объектов, расположенных на разных уровнях в соответствии с иерархиями «содержать» и «являться».
Обмен информацией внутри системы. Обмен осуществляется в терминах посылки и приёма сообщений, которые осуществляют объекты.
Операции ввода/вывода при взаимодействии с устройствами также представляются в терминах объектов и посылки сообщений.
Минимум побочных эффектов. Объекты взаимодействуют друг с другом через сообщения, и их состояние тесно связано с поведением. В этом случае побочные эффекты запрещены.
Поддержка микроядерной концепции, позволяет реализовать большинство функций ядра в виде сервисов, работающих в режиме задачи (пользовательского приложения), а, следовательно, допускающих реализацию в виде автономных объектов, которыми проще управлять.
Распределённый характер, заключается в способности легко обмениваться программными объектами между различными компьютерами.
Основной язык разработки - C++, но возможны исключения в виде Java или даже Lisp.
Отличительные признаки ОООСОООС присущи следующие отличительные признаки:Объектная архитектура. Основная сущность в системе - объект, поэтому архитектура всей

Слайд 15Преимущества и недостатки ОООС

К достоинствам объектно-ориентированных ОС можно отнести:
чёткость и

прозрачность архитектуры, основанной на понятиях объекта и интерфейса;
упрощение тестируемости в

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

К недостаткам ОООС можно отнести:
более низкая производительность из-за наличия многих звеньев в цепи передачи сообщения от объекта к другому объекту, а также необходимости использования более абстрактных механизмов для поддержки ООП;
существенный размер кода самой системы из-за необходимости описания интерфейсов объектов даже для самых простых действий.

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

Преимущества и недостатки ОООСК достоинствам объектно-ориентированных ОС можно отнести:чёткость и прозрачность архитектуры, основанной на понятиях объекта и

Слайд 16Пути повышения производительности ОООС

Исходя из анализа факторов, влияющих на производительность

системы, а также опыта использования различных языков программирования и концептуальных

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

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика