Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Материалы по конспектам 2011.docx
Скачиваний:
13
Добавлен:
21.04.2019
Размер:
967.53 Кб
Скачать

15. Объектная модель функционирования

Функционирование Windows NT – взаимодействие приложений прикладного уровня и серверов – клиент-серверное (ПОПЫТКА использовать микроядерную систему), но стали развивать идею оконного интерфейса, и ядро получилось большое. Исполнительная система – иерархическая структура системы ввода/вывода, драйверы – классическая иерархическая структура.

В качестве объектов рассматриваются ресурсы ОС (файлы, процессы, средства синхронизации, аппаратные ресурсы). Принципы ООП сохраняются. Это дает возможность сохранять хорошие решения и легко их изменять. Можно создавать новые объекты на основе уже существующих. Защита информации, наследование, тиражирование за счет инкапсуляции. Это дает структурированность системы (было использовано в Windows NT).

16. Состав исполнительной системы WinNt

HAL – Hardware Abstraction Level.

Существуют сети микроядер, взаимодействующих между собой – это массивно-параллельные машины. На основе микроядерных систем можно строить системы для распределенного решения задач. Бывает модель SMP (симметричная мультипроцессорная система).

17. Совместимость

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

  • Двоичная совместимость – исполняемый файл. Определяется архитектурой процессора, совпадение API. Внутренняя структура файла должна соответствовать структуре, используемой в данной ОС. При несовпадении структуры необходима эмуляция двоичного кода. Эмуляция используется в системах кросс-разработки.

  • На уровне исходных кодов – совместимость на уровне компиляторов, совместимость библиотек, системных вызовов.

Работа эмулятора – входной команде сопоставляется эквивалентная ей подпрограмма (долгий процесс). Разрабатывается целый пласт ПО, ориентированный на достижение двоичной совместимости: эмуляторы, кроссплатформенные системы, интегрированные среды разработки (IDE) (Eclipse, NetBeans).

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

Состав системы кросс-разработки:

  • Средства редактирования

  • Средства компиляции

  • Средства отладки

Все это находится на инструментальной машине, а в готовом виде передается на целевую. Использование кросс-средств: системы программирования МК (Intel, Atmel и др.). ОС WinCE, PalmOS. Такие ОС включают в себя набор компиляторов и ассемблеров на инструментальной машине под ее ОС, библиотеки, выполняющие большую часть функций целевой ОС, средства отладки.

18. Множественные прикладные среды. Способы реализации

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

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

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

В зависимости от архитектуры:

1. Прикладная программная среда в виде приложения (верхний слой ядра родной ОС).

Пользовательский режим работы, трансляция системных вызовов (вызовов API) в вызовы «родной» ОС. Соответствует классическим многослойным ОС (Unix, Windows).

2. Наличие нескольких прикладных сред, функционирующих равноправно. Каждая в виде отдельного слоя ядра.

Привилегированный режим работы. API обращается к функциям нижележащего (привилегированного) слоя ОС. На систему ложится задача распознавания и адаптации вызова. Требуется большое количество ресурсов. В ядро передаётся набор идентифицирующих характеристик для распознавания.

3. Микроядерный принцип.

Любая прикладная среда оформляется в виде отдельного сервера пользовательского режима. Приложения, используя API, обращаются системными вызовами к соответствующей прикладной среде через микроядро. Прикладная среда обрабатывает запрос и через микроядро возвращает результат. Могул использоваться функции микроядра. Возможно многократное обращение к другим ресурсам (во время работы микроядра).