Микроядерная архитектура ЭВМ.

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

Пользовательский режим Серверы ОС Приложения, утилиты
Привилегированный режим Микроядро ОС

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

Пользовательский режим Приложения Файловый сервер Сервер процессов Сервер безопасности Сетевой сервер
Привилегированный режим Микроядро

Количество переключений контекста заметно увеличилась. Производительность уменьшилась.

Преимущества и недостатки микроядерной архитектуры.

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

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

3. надежность ОС повышается.

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

Экзоядро – ядро ОС, предоставляющее лишь функции для взаимодействия между процессами и безопасного выделения и освобождения ресурсов. Наноядро – архитектура ядра ОС, в рамках которой крайне упрощенное ядро выполняет лишь одну задачу – обработку аппаратных прерываний, генерируемых устройствами компьютера. С архитектурными особенностями связаны 2 свойства: переносимость, совместимость. Если код ОС может быть сравнительно легко перенесен с процессора одного типа на процессор другого типа, то такую ОС называют переносимой. Для того чтобы ОС считалась переносимой нужно:

1. большая часть кода должна быть написана на языке, трансляторы которого имеются на всех машинах.

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

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

Совместимость – возможность ОС выполнять приложения других ОС. Различают 2 типа: на двоичном уровне и на уровне исходных текстов. Двоичная совместимость достигается в том случае, когда можно взять исполняемую программу и запустить на выполнение в другой ОС. Совместимость на уровне исходных текстов требует наличие соответствующего компилятора в составе компьютера, на котором предполагается выполнять данное приложение, а также совместимости на уровне библиотек и системных вызовов.