« Билет №20

Билет №21.
Совместимость и множественные прикладные среды. Способы реализации прикладных программных сред.
В то время как многие архитектурные особенности операционных систем непо-средственно касаются только системных программистов, концепция множественных прикладных сред непосредственно связана с нуждами конечных пользователей - возможностью операционной системы выполнять приложения, написанные для других операционных систем. Такое свойство операционной системы называется совместимостью.
Прикладная программная среда - совокупность средств ОС, предназначенная для организации выполнения приложений, использующих определенную систему машинных команд, определенный тип API и определенный формат исполняемой программы. Каждая ОС создает как минимум одну прикладную программную среду. Проблема состоит в обеспечении совместимости нескольких программных сред в рамках одной ОС. При построении множественных прикладных сред используются различные архитектурные решения, концепции эмуляции двоичного кода, трансляции API.
Один из наиболее очевидных вариантов реализации множественных при-кладных сред основывается на стандартной многоуровневой структуре ОС. Пусть операционная система OS1 поддерживает кроме своих «родных» при-ложений приложения операционных систем OS2 и OS3. Для этого в ее составе имеются специальные приложения - прикладные программные среды, - которые транслируют интерфейсы «чужих» операционных систем API OS2 и API OS3 в интерфейс своей «родной» операционной системы - API OS1.

Рисунок 1
В другом варианте реализации множественных прикладных сред операционная система имеет несколько равноправных прикладных программных интерфейсов. Пусть операционная система поддерживает приложения, написанные для OS1, OS2 и OS3. Для этого непосредственно в пространстве ядра системы размещены прикладные программные интерфейсы всех этих ОС: API OS1, API OS2 и API OS3. В этом варианте функции уровня API обращаются к функциям нижележащего уровня ОС, которые должны поддерживать все три в общем случае несовместимые прикладные среды.
Рисунок 2
Рисунок 3
Еще один способ построения множественных прикладных сред основан на микроядерном подходе.
Рисунок 4
При этом очень важно отделить базовые механизмы операционной системы от специфических для каждой из прикладных сред высокоуровневых функций. В соответствии с микроядерной архитектурой все функции ОС реализуются микроядром и серверами пользовательского режима. Каждая прикладная среда оформляется в виде отдельного сервера пользовательского режима и не включает базовых механизмов. Приложения, используя API, обращаются с системными вызовами к соответствующей прикладной среде через микроядро. Прикладная среда обрабатывает запрос, выполняет его и отсылает приложению результат. Такому подходу к конструированию множественных прикладных сред присущи все достоинства и недостатки микроядерной архитектуры: очень просто можно добавлять и исключать прикладные среды, что является следствием хорошей расширяемости микроядерных ОС; надежность и стабильность выражаются в том, что при отказе одной из прикладных сред все остальные сохраняют работоспособность; низкая производительность микроядерных ОС сказывается на скорости работы прикладных сред, а значит, и на скорости выполнения приложений.

Билет №22 »