Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
суворов.doc
Скачиваний:
1
Добавлен:
14.08.2019
Размер:
793.6 Кб
Скачать
  1. Микроядерная архитектура

Альтернатива классическому способу построения ОС (многослойное ядро).

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

Более высокие функции ядра оформляются в виде приложений, которые работают в пользовательском режиме (менеджеры ресурсов)

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

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

Работа микроядерной ОС соответствует модели «клиент-сервер», в которм роль транспортных средств играет микроядро.

«+»1. Переносимость – хорошая т.к. код изолирован в микроядре

2.Расширяемость - легко расширяема т.к. машинонезависемая часть ОС реализована в виде серверов

3.Надежность- в высокой степени за счет: каждый сервер выполняется в виде отдельного процесса и в собственном изолированном адресном пространстве; уменьшение количества кода, работающего в привилегированном режиме. Упрощается его отладка.

4.Поддержка распределенных вычислений – на высоком уровне. В связи с тем, что переход в распределенной обработке требует минимальных изменений в ОС - локальный транспорт заменяется на сетевой.

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

  1. Совместимость и множественные прикладные среды.

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

Виды:

  1. Двоичная совместимость – достигается тогда, когда программу можно запустить на выполнение в другой ОС.

  2. Совместимость на уровне исходных текстов требует наличия кампиляторов и совместимости на уровне системных вызовов и библиотек. Зависит от архитектуры процессора и от архитектуры аппаратной платформы. Условия для совместимости:

  • Вызовы функций API, которые содержит приложение, должны поддерживаться данной ОС

  • Внутренняя структура исполняемого файла должна соответствовать структуре исполняемого файла данного реестра.

  • В некоторых ОС необходимо организовать эмуляцию двоичного кода

Интерфейс прикладного программирования(API): - предоставляет ОС для пользователя в виде набора функций. ОС с различной внутренней организацией, но одинаковым набором функций API кажутся для программиста одной и той же ос. Это упрощает перенос приложений между ОС. Приложения обращаются к API с помощью системных вызовов.

Трансляция Библиотек:

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

Способы реализации прикладных программных средств:

  1. Прикладные программные среды, транслирующие системные вызовы:

Основывается на многоуровневой структуре ОС. Основная задача – преобразовать интерфейс одной ОС в другой

ОС OS1 поддерживает кроме своих «родных» приложений приложения ОС OS2 и OS3. Для этого в ее составе имеются спец приложения - прикладные программные среды,- которые транслируют интерфейсы «чужих» ОС API OS2 API OS3

  1. Реализация совместимости на основе нескольких равноправных API:

ОС поддерживает приложения, написанные для

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

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