21  Структура ОС. Структура ядра.

ОС состоит из структурированных частей-модулей, но не существует четкого разделения на устоявшиеся модули для каждой из систем. Модули объединяются в 2 группы:1.Ядро-выполняет основные функции ОС(управляют памятью, устройствами ввода-вывода). 2.Вспомогательные модули - выполняют вспомогательные функции. Эти модули неявным образом разбиты. Ядро-группа модулей, оно выполняет следующие функции: 1. функции, решающие внутрисистемные задачи, например, обработка прерываний, загрузка и выгрузка страниц памяти. 2. поддержка работы приложений (приложения могут обращаться с запросами к ядру - системные вызовы, например, если приложение хочет читать файл, тогда оно обращается за этим к ядру). Для того, чтобы обеспечить быстроту действий, модули ядра являются резидентными(находятся в памяти) и ядро(его модули) оформляются в программные модули со специальным форматом, и этот формат отличается от формата приложения(пользовательских программ). Вспомогательные модули выполняют менее обязательные функции(дефрагментация диска, архивирование), поэтому они оформляются в виде приложений или библиотек процедур.  Вспомогательные модули делятся на: 1. Утилиты-программы, решающие задачи управления и сопровождения компьютера (дефрагментация диска, архивирование) 2. Системные обрабатывающие программы (компиляторы, интерпретаторы - позволяют создавать собственные проги) 3. Программы дополнительных возможностей (калькулятор, текстовый и графический редакторы) 4. Библиотеки процедур - некоторые готовые процедуры в виде статических или динамических библиотек, которые пользователь может использовать в проге (которые содержат функции от математических до функций ввода\вывода). Для того, чтобы ОС могла надежно управлять. Сама ОС должна иметь привилегии перед модулями приложений, т.е. ОС должна уметь делать такие вещи, которые не могут или нельзя для обычных приложений. Т.о. ядро должно работать в режиме супервизора. Для этого аппаратно выполнено следующее: процессор обладает 4 уровнями привилегий для программ. Некоторые функции доступны для ядра, а некоторые для приложений. Но не все ОС используют все уровни привилегий. Например, ОС OS/2 использует 3 уровня привилегий,UNIX-0 и 3, т.е. всего 2. Ядро-это модули, которые работают в наиболее привилегированном режиме. Чем больше уровней привилегий у процессора и у ОС, тем надежнее и проще будет работать ОС, т.к. каждая группа модулей будет работать на своем уровне и при ошибке в одном уровне не будет изменятся работа др. модулей, уровней. Но чем больше модулей и уровней привилегий, тем меньше производительность ПК. Рассмотрим 2 уровня привилегий (см. в тетрадь. С 26).

t-это переключение режимов, пока процессор переключается между привилегированными уровнями и в это время процессор не делает полезных действий. Такая система классическая, она используется в Windows, Linux, Unix. Эта система не используется в МS-DOS, которая была разработана для процессоров 8088/86, в которых не было уровней привилегий. И ядро, и приложение работали на одном уровне привилегий, но, следовательно, была меньше надежность, хотя и больше производительность. Работу ПК можно представить в виде 3-х слоев:1. Аппаратный компонент(АК). 2.ядро. 3.прилож-я(модули ОС). Никакое приложение и модуль со вспомогательной функцией не может напрямую использовать аппаратную часть, только некоторое ядро. Это дает упрощение процедуры разработки ОС и надежность работы ОС. Рассмотрим структуру самого ядра. Оно состоит из: 1.Средства аппаратной поддержки О.С. (средства поддержки привилегированного режима, система прерываний - выполняют часть функций ОС и относятся к ОС, средства защиты памяти) 2. Машинно-зависимые компоненты: обеспечивает возможность работы О.С. с различным классом аппаратуры 3. Базовые механизмы ядра: основной слой, который выполняет прерываний, переключения уровней приоритетов, работает с памятью, перемещения страницы, диспетчер. Решение о необходимости переключения режима к этому слою поступает с других. слоев. 4.Менеджеры ресурсов: модули реализуют стратегические задачи по управлению ресурсами ОС. Диспетчеры управления ввода/вывода, ф.с., памяти. 5. Интерфейс системных вызовов (самый верхний слой): взаимодействует с приложениями (для Win - функции API). Т.о. ОС имеет разделение на слои. Нижний слой является частью аппаратных компонентов. Это деление является условным.

 

Hosted by uCoz