- •Эволюция ос и Сетевые ос
- •3.Назначение и функции ос для автономного (не сетевого )пк
- •Функциональные компоненты автономной ос
- •Назначение и функции сетевой ос
- •Сетевые службы и сервисы
- •Одноранговые и Сервисные ос, Современные ос
- •Архитектура ос
- •Многослойная архитектура ос
- •Микроядерная архитектура
- •Совместимость и множественные прикладные среды.
- •Мультипрограммирование
- •Мультипроцессорная обработка
- •Процессы и потоки
Микроядерная архитектура
Альтернатива классическому способу построения ОС (многослойное ядро).
Суть-в привилегированном режиме остается работать только очень не большая часть ОС –микроядро, которое защищено от остальных частей ОС и приложений. В состав ядра обычно входят машинно – зависимые модули, а так же модули, выполняющие базовые функции ядра по управлению процессами, обработки прерываний, управление вирт памятью, пересылки сообщений и управление устройствами ввода-выводы.
Более высокие функции ядра оформляются в виде приложений, которые работают в пользовательском режиме (менеджеры ресурсов)
Менеджеры ресурсов отличаются от обычных пользовательских приложений тем, что они в основном используются пользователями и не реализуют взаимодействия между собой.
Менеджеры ресурсов, вынесенные в пользовательский режим называются серверами ОС т.е. модулями, основным назначением которого является обслуживание запросов локальных приложений и других модулей ОС.
Работа микроядерной ОС соответствует модели «клиент-сервер», в которм роль транспортных средств играет микроядро.
«+»1. Переносимость – хорошая т.к. код изолирован в микроядре
2.Расширяемость - легко расширяема т.к. машинонезависемая часть ОС реализована в виде серверов
3.Надежность- в высокой степени за счет: каждый сервер выполняется в виде отдельного процесса и в собственном изолированном адресном пространстве; уменьшение количества кода, работающего в привилегированном режиме. Упрощается его отладка.
4.Поддержка распределенных вычислений – на высоком уровне. В связи с тем, что переход в распределенной обработке требует минимальных изменений в ОС - локальный транспорт заменяется на сетевой.
«-» Производительность – ниже за счет дополнительных переключений между режимами работы процессора (все идет через микроядро).
Совместимость и множественные прикладные среды.
Совместимость - возможность ОС выполнять приложения, написанных для другой ОС.
Виды:
Двоичная совместимость – достигается тогда, когда программу можно запустить на выполнение в другой ОС.
Совместимость на уровне исходных текстов требует наличия кампиляторов и совместимости на уровне системных вызовов и библиотек. Зависит от архитектуры процессора и от архитектуры аппаратной платформы. Условия для совместимости:
Вызовы функций API, которые содержит приложение, должны поддерживаться данной ОС
Внутренняя структура исполняемого файла должна соответствовать структуре исполняемого файла данного реестра.
В некоторых ОС необходимо организовать эмуляцию двоичного кода
Интерфейс прикладного программирования(API): - предоставляет ОС для пользователя в виде набора функций. ОС с различной внутренней организацией, но одинаковым набором функций API кажутся для программиста одной и той же ос. Это упрощает перенос приложений между ОС. Приложения обращаются к API с помощью системных вызовов.
Трансляция Библиотек:
Использование прикладных программных средств позволяет ускорить процесс выполнения приложений на другую ОС. Для обеспечения совместимости необходимо организовать бесконфликтное сосуществование в рамках одной ОС нескольких способов управления ресурсами ПК.
Способы реализации прикладных программных средств:
Прикладные программные среды, транслирующие системные вызовы:
Основывается на многоуровневой структуре ОС. Основная задача – преобразовать интерфейс одной ОС в другой
ОС OS1 поддерживает кроме своих «родных» приложений приложения ОС OS2 и OS3. Для этого в ее составе имеются спец приложения - прикладные программные среды,- которые транслируют интерфейсы «чужих» ОС API OS2 API OS3
Реализация совместимости на основе нескольких равноправных API:
ОС поддерживает приложения, написанные для
OS1, OS2 и OS3.Для этого в пространстве ядра систем размещены прикладные программные интерфейсы всех этих ОС API OS1, API OS2 и API OS3. Функции уровня API обращаются к функциям нижележащего уровня ОС, которые должны поддерживать все три т этом случае несовместимые прикладные среды. Функции каждого API реализуются ядром с учетом специфики соответствующей ОС, даже если они имеют аналогичные значения.
3)Микроядерный подход – приложения, используя API , обращаются с системными вызовами к соответствующей прикладной среде через микроядро. Прикладная среда обрабатывает запрос, выполняет его и отсылает приложению результат. В ходе выполнения запроса прикладной среде приходится обращаться к базовым механизмам ОС, реализуемым микроядром и другими серверами ОС.