Технические науки
Информатика, вычислительная техника и управление
Системный анализ, управление и обработка информации
Заярная Л.И. аспирант Московского государственного института электронной техники
КЛАССЫ ОПЕРАЦИОННЫХ СИСТЕМ РЕАЛЬНОГО ВРЕМЕНИ (ОСРВ)
ОСРВ - это ОС, в которой успешность работы любой программы зависит не только от её логической правильности, но и от времени, за которое она получила этот результат. Далее в данной статье рассматриваются основные классы ОСРВ.
1. Монолитная архитектура
ОСРВ с монолитной архитектурой можно представить в виде (рис. 1):
• прикладного уровня, состоящего из работающих прикладных процессов;
• системного уровня, состоящего из монолитного ядра операционной системы, в котором можно выделить следующие части: интерфейс между приложениями и ядром, собственно ядро системы и интерфейс между ядром и оборудованием (драйверы устройств).
Рис. 1. ОСРВ с монолитной архитектурой
Интерфейс в таких системах играет двойную роль:
1. управление взаимодействием прикладных процессов и системы,
2. обеспечение непрерывности выполнения кода системы (т.е. отсутствие переключения задач во время исполнения кода системы).
Основным преимуществом монолитной архитектуры является ее относительная быстрота работы по сравнению с другими архитектурами. Однако, достигается это, в основном, за счет написания значительных частей системы на ассемблере.
Недостатки монолитной архитектуры.
1. Системные вызовы, требующие переключения уровней привилегий (от пользовательской задачи к ядру), должны быть реализованы как прерывания или специальный тип исключений. Это сильно увеличивает время их работы.
2. Ядро не может быть прервано пользовательской задачей (поп-ргеешр1аЫе). Это может приводить к тому, что высокоприоритетная задача может не получить управления из-за работы низкоприоритетной.
3. Сложность переноса на новые архитектуры процессора из-за значительных ассемблерных вставок.
4. Негибкость и сложность развития: изменение части ядра системы требует его полной перекомпиляции.
2. Модульная архитектура (на основе микроядра)
Модульная архитектура появилась, как попытка убрать интерфейс между приложениями и ядром и облегчить модернизацию системы и перенос ее на новые процессоры.
Теперь микроядро играет двойную роль (рис 2):
1. управление взаимодействием частей системы (например, менеджеров процессов и файлов),
2. обеспечение непрерывности выполнения кода системы (т.е. отсутствие переключения задач во время исполнения микроядра).
Рис. 2. ОСРВ на основе микроядра
Недостатки модульной архитектуры фактически те же, что и у монолитной. Проблемы перешли с уровня интерфейса на уровень микроядра. Системный интерфейс по-прежнему не допускает переключения задач во время работы микроядра, только сократилось время пребывания в этом состоянии, проблемы с переносимостью микроядра уменьшились (в связи с сокращением его размера), но остались.
3. Объектная архитектура на основе объектов-микроядер
В этой архитектуре интерфейс между приложениями и ядром отсутствует вообще (рис. 3). Взаимодействие между компонентами системы (микроядрами) и пользовательскими процессами осуществляется посредством обычного вызова функций, поскольку и система, и прило-
жения написаны на одном языке (обычно С++). Это обеспечивает максимальную скорость системных вызовов.
Рис. 3. Пример объектно-ориентированной ОСРВ
Фактическое равноправие всех компонент системы обеспечивает возможность переключения задач в любое время. Объектно-ориентированный подход обеспечивает модульность, безопасность, легкость модернизации и повторного использования кода.
В отличие от предыдущих систем, не все компоненты самой операционной системы должны быть загружены в оперативную память. Если микроядро уже загружено для другого приложения, то оно повторно не загружается, а используется код и данные уже имеющегося микроядра. Все эти приемы позволяют сократить объем требуемой памяти. Поскольку разные приложения разделяют одни микроядра, то они должны работать в одном адресном пространстве. Следовательно, система не может использовать виртуальную память и тем самым работает быстрее (так как исключаются задержки на трансляцию виртуального адреса в физический).
Для дальнейшего прочтения статьи необходимо приобрести полный текст. Статьи высылаются в формате PDF на указанную при оплате почту. Время доставки составляет менее 10 минут. Стоимость одной статьи — 150 рублей.