научная статья по теме Классы операционных систем реального времени (ОСРВ) Науковедение

Текст научной статьи на тему «Классы операционных систем реального времени (ОСРВ)»

Технические науки

Информатика, вычислительная техника и управление

Системный анализ, управление и обработка информации

Заярная Л.И. аспирант Московского государственного института электронной техники

КЛАССЫ ОПЕРАЦИОННЫХ СИСТЕМ РЕАЛЬНОГО ВРЕМЕНИ (ОСРВ)

ОСРВ - это ОС, в которой успешность работы любой программы зависит не только от её логической правильности, но и от времени, за которое она получила этот результат. Далее в данной статье рассматриваются основные классы ОСРВ.

1. Монолитная архитектура

ОСРВ с монолитной архитектурой можно представить в виде (рис. 1):

• прикладного уровня, состоящего из работающих прикладных процессов;

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

Рис. 1. ОСРВ с монолитной архитектурой

Интерфейс в таких системах играет двойную роль:

1. управление взаимодействием прикладных процессов и системы,

2. обеспечение непрерывности выполнения кода системы (т.е. отсутствие переключения задач во время исполнения кода системы).

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

Недостатки монолитной архитектуры.

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

2. Ядро не может быть прервано пользовательской задачей (поп-ргеешр1аЫе). Это может приводить к тому, что высокоприоритетная задача может не получить управления из-за работы низкоприоритетной.

3. Сложность переноса на новые архитектуры процессора из-за значительных ассемблерных вставок.

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

2. Модульная архитектура (на основе микроядра)

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

Теперь микроядро играет двойную роль (рис 2):

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

2. обеспечение непрерывности выполнения кода системы (т.е. отсутствие переключения задач во время исполнения микроядра).

Рис. 2. ОСРВ на основе микроядра

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

3. Объектная архитектура на основе объектов-микроядер

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

жения написаны на одном языке (обычно С++). Это обеспечивает максимальную скорость системных вызовов.

Рис. 3. Пример объектно-ориентированной ОСРВ

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

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

Для дальнейшего прочтения статьи необходимо приобрести полный текст. Статьи высылаются в формате PDF на указанную при оплате почту. Время доставки составляет менее 10 минут. Стоимость одной статьи — 150 рублей.

Показать целиком