Архитектура ОС. Ядро и вспомогательные модули. Многослойная структура ОС. Микроядерная архитектура ОС

Большинство современных ОС представляет собой хорошо структурированные модульные системы способные к развитию, расширения и переносу на новую платформу.

Ядро и вспомогательные модули ОС.

Наиболее общим подходом к структуризации ОС является разделение всех ее модулей на 2 группы:

1) ядро- модули выполнения основной функции ОС.

2) Модули выполнения вспомогательной функции ОС.

Модули ядра выполняют такие базовые функции ОС как управление процессами памятью, ввода-вывода и др.

Функции ядра служат также для поддержки приложений, создания для них интерфейс прикладной программ- API (Application Programming Interface).

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

Решение о том является ли программа частью ОС или нет, принимает производитель ОС.

Например: web браузер (microsoft)

Рис. 4.1 Нечеткость границы между ОС и приложениями.

 
 


-вспомог. мод.ОС

-прилож-я польз-ля

Вспомогательные модуля ОС- делятся на:

1) Утилиты-

2) Система обработки программы- текстовые и графические редакторы, компеляторы, отладчики и т.д.

3)Программы предоставляют пользователю дополнительные услуги- специальные варианты пользовательского интерфейса.

4) Библиотеки процедур- различные назначения упрощенной разработки приложения, как и обычные приложения или выполнение своих задач 1,2 и 4 обращения к функциям ядра по средним системным вызовов.

Рис. 4.2 Взаимодействие между ядром и

вспомогательным модулем ОС.


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

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

Ядро в привилегированном режиме.

Для надежного управления кодом выполнения приложения ОС должна иметь по отношению к приложению определенные привилегии. Иначе некорректное рабочее приложение сможет вмешаться в работу ОС и разрушить часть ее кодов.

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

Аппарат. ПК должна поддерживать как минимум 2 режима работы:

1) Пользовательский режим (User mode)

2) Привилегированный режим (режим ядра) (Kernel mode)

3) Режим супервизора (supervisor mode)

Т.к. ядро выполняет все основные функции ОС, то именно оно и работает в привилегированном режиме.

Именно это свойство- работа в привилегированном режиме служит основным определением понятия ядра.

Рис. 4.3 Архитектура ОС с ядром в

привилегированном режиме.

           
 
Утилиты ОС
 
Система обраб. программы
 
Приложения пользователя


пользовательский режим

привилегированный режим

 
 


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

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

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

Механизмы защиты памяти используется ОС не только для защиты области памяти выделенных ОС какому-нибудь приложению от остальных приложений.

Это свойство позволяет локализировать некорректные рабочие приложения в собственной области памяти так что его ошибки не оказывают влияние на остальные приложения и ОС.

Между количеством уровней привилегий реализуемых аппаратно и количествам уровней привилегий поддерживаемых ОС нет прямого соответствия.

Например: на базе 4-х уровней обеспечивается процессорами Intel, ОC OS/2 строит 3-х уровневой системы привилегий, а Windows NT, Unix ограничиваются 2-х уровневой системой.

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

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

Рис. Смена режима при выполнении системного

вызова к привилегированному ядру.

 
 


Раб.прилож. Сист.вызов Раб.прилож. Польз.режим

Привилиг. режим

 
 


Работа ядра

           
 
 
     


Вр.переключ. режимов

Архитектура ОС основанная на привилегированном ядре и приложении пользовательского режима классической ее использ. Unix, OS/2, VAZVHS, IBM, OS/360,..

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

Рис. Архитектура ОС NetWare.

пользоват.режим


привилигир.режим

                   
     
         
 


NLM

       
   
 
 


NLM

           
 
модули прлож. ОС NetWare
     
 


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


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



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