Классификация операционных систем

 

Операционные системы классифицируются по ряду признаков, а именно:

- по назначению,

-  по режиму обработки задач,

- по способу взаимодействия операторов с системой,

-  по способам построения.

Структура классификации по этим признакам изображена на рис. 1.9

Сущность ряда признаков, которыми могут обладать ОС были рассмотрены выше в разделе «Основные понятия».

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

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

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

По способам своего построения ОС разделяются на микроядерные и монолитные.


Рисунок 3. Классификация операционных систем

 


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

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

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

В качестве монолитной ОС можно назвать Windows 95/98 или ОС Linux. Однако, по функциональным возможностям эти ОС существенно различаются. Ядро ОС Windows мы не можем изменить, нам не доступны его исходные коды и у нас нет программы для сборки (компиляции) этого ядра. А вот в случае с Linux мы можем сами собрать ядро, которое нам необходимо, включив в него те необходимые программные модули и драйверы, которые мы считаем целесообразным включить именно в ядро. Вместе с тем, в монолитной ОС, несмотря на ее возможную сильную структуризацию, очень трудно удалить один из уровней многоуровневой модульной структуры. Добавление новых функций и изменение существующих для монолитных ОС требует очень хорошего знания всей архитектуры ОС и чрезвычайно больших усилий.

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

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



ЛЕКЦИЯ№6


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: