Аппаратная зависимость и переносимость ос

      Комментарии к записи Аппаратная зависимость и переносимость ос отключены

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

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

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

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

2)средства трансляции адресов;

3)средства переключения процессов;

4)система прерываний;

5)системный таймер;

6)средства защиты областей памяти.

1.Средства поддержки привилегированного режима обычно основаны на системном регистре процессора, часто называемом «словом состояния» машины или процессора. Этот регистр содержит некоторые признаки, определяющие режимы работы CPU, в том числе и признак текущего режима привилегий. Смена режима привилегий выполняется за счет применения слова состояния машины в результате прерывания или выполнения привилегированной команды.

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

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

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

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

Например, завершение ввода – вывода внешним устройством, некорректное завершение арифметической операции, истечение интервала времени. При возникновении условий прерывания его источник (котроллер внешнего устройства, таймер, арифметический блок процессора и др.) выставляет определенный электрический сигнал. Этот сигнал прерывает выполнение процессором последовательности команд, задаваемой исполняемым кодом. И вызывает автоматический переход на заранее определенную процедуру, называемую процедурой обработки прерываний.

5.Системный таймер необходим операционной системе для выдержки интервалов времени. Для этого в регистр таймера программно загружается значение требуемого интервала, у которого затем автоматически с определенной частотой начинает вычитаться по единице. При достижении нулевого значения счетчика таймер инициирует прерывание, которое обрабатывается процедурой операционной системы.

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

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

Статьи к прочтению:

Minecraft: Story Mode Season 2 , Запуск без DirectX11 (Без его аппаратной поддержки)


Похожие статьи: