Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы СисПО.doc
Скачиваний:
14
Добавлен:
27.09.2019
Размер:
2.93 Mб
Скачать
  1. Типовые средства аппаратной поддержки операционных систем

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

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

Обычно они основаны на системном регистре процессора (слово состояние). Этот регистр содержит некоторые признаки, в том числе признак текущего режима привилегий (обычно/в простейшем виде 2 – ядро и пользователь, чаще всего 4 – ядро, супервизор, выполнение, пользователь).

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

  2. Средство переключения процессов. Предназначено для быстрого сохранения контекст приостанавливаемого процесса и восстановление контенкста процесса, которые становятся активными

Для этого используется отдельные участкуи памяти(мигмент стее) на которые указаыаю указатель процесса

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

  2. Системный таймер. Часто реализуемый в виде быстродействующего регистра-счётчика. Необходим ОС для выдержки интервала времени

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

  1. Концепция, преимущества и недостатки микроядерной архитектуры

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

Первоначально ОС имели монолитную архитектуру, в последующем появилась классическая архитектура в соответствии с которой:

  1. Все основные функции ОС, составляющие многослойное ядро, выполняются в привилегированном режиме.

  2. Вспомогательные функции ОС, выполняются в пользовательском режиме.

  3. Каждое приложение пользовательского режима работает в собственном адресном пространстве и защищено от вмешательства других приложений.

  4. Код ядра, выполняемые в привилегированном режиме ,имеет доступ к областям памяти всех приложениях, но от них защищен.

  5. Приложения обращаются к ядру запросами на выполнение системных функций. Рисунок 1 а

  6. Рис. 1. Перенос основного объема функций ядра в пользовательское

  7. Пространство

Микроядерная архитектура появилась как альтернатива классической, её концепция состоит в следующем:

  1. В привилегированном режиме остается работать только небольшая часть ОС, называемая микроядром. Рисунок 1б

  2. Микроядро защищено от остальных частей ОС и приложений.

  3. В состав микроядра обычно выходят машинно-зависимые модули и модули, выполняющие базовые функции (контекст, прерывания).

  4. Набор функций микроядра соответствует функция, которые невозможно выполнить в пространстве пользователя.

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

Однозначного решения, какие функции надо передать микроядру, а какие оформить в виде сервера не существуют, это решают разработчики.

Механизм обращения к функциям ОС поясняется рисунком 2. Такая технология обращения соответствует модели клиент-сервер.

Рис. 2. Реализация системного вызова в микроядерной архитектуре

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

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

  2. Расширяемость присуща микроядерной ОС в очень высокой степени

  3. Использование микроядерной модели повышает надежность ОС

Недостаток микроядерной архитектуры

Рис. 3. Смена режимов при выполнении системного вызова

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

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

В идеальном случае микроядро может состоять только из:

- средств передачи сообщений

- средств взаимодействия с аппаратурой (вт.ч. средств доступа к механизмам привилегированной защиты)

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