Аппаратная зависимость и переносимость ос
Многие операционные системы успешно работают на различных аппаратных платформах без существенных изменений в своем составе. Во многом это объясняется тем, что, несмотря на различие в деталях, средства аппаратной поддержки ОС большинства компьютеров приобрели сегодня много типовых черт.
В результате в операционной системе можно выделить достаточно компактный слой машинно–зависимых компонентов ядра и сделать остальные слои ОС общими для разных аппаратных платформ.
Практически все современные аппаратные платформы имеют некоторый типичный набор средств аппаратной поддержки ОС, в который входят следующие компоненты:
1)средства поддержки привилегированного режима;
2)средства трансляции адресов;
3)средства переключения процессов;
4)система прерываний;
5)системный таймер;
6)средства защиты областей памяти.
1.Средства поддержки привилегированного режима обычно основаны на системном регистре процессора, часто называемом «словом состояния» машины или процессора. Этот регистр содержит некоторые признаки, определяющие режимы работы CPU, в том числе и признак текущего режима привилегий. Смена режима привилегий выполняется за счет применения слова состояния машины в результате прерывания или выполнения привилегированной команды.
2.Средства трансляции адресов выполняют операции преобразования виртуальных адресов, которые содержатся в кодах процесса, в адреса физической памяти.
3.Средства переключения процессов предназначены для быстрого сохранения контекста приостанавливаемого процесса и восстановления контекста процесса, который становится активным. Содержимое контекста обычно включает содержимое всех регистров общего назначения процессора, регистра флагов операций (т.е. флагов нули, переноса, переполнения и т.п.). Переключение контекста выполняется по определенным командам процессора, например, по команде перехода на новую задачу.
4.Система прерываний позволяет компьютеру реагировать на внешние события, синхронизировать работу устройств ввода – вывода и выполнение процессов, быстрого переходить с одной программы на другую.
Механизм прерываний необходим для того, чтобы оповестить процессор о возникновении в вычислительной системе некоторого непредсказуемого события или события, не синхронизировано с циклом работы процессора.
Например, завершение ввода – вывода внешним устройством, некорректное завершение арифметической операции, истечение интервала времени. При возникновении условий прерывания его источник (котроллер внешнего устройства, таймер, арифметический блок процессора и др.) выставляет определенный электрический сигнал. Этот сигнал прерывает выполнение процессором последовательности команд, задаваемой исполняемым кодом. И вызывает автоматический переход на заранее определенную процедуру, называемую процедурой обработки прерываний.
5.Системный таймер необходим операционной системе для выдержки интервалов времени. Для этого в регистр таймера программно загружается значение требуемого интервала, у которого затем автоматически с определенной частотой начинает вычитаться по единице. При достижении нулевого значения счетчика таймер инициирует прерывание, которое обрабатывается процедурой операционной системы.
Прерывания от системного таймера используются операционной системой в первую очередь для снижения за тем, как отдельные процессы расходуют время процессора.
6.Средства защиты областей памяти обеспечивают на аппаратном уровне проверку возможностей программного кода осуществлять с данными определенной области памяти такие операции, как чтение, запись или выполнение.
Статьи к прочтению:
Minecraft: Story Mode Season 2 , Запуск без DirectX11 (Без его аппаратной поддержки)
Похожие статьи:
-
Аппаратная защита адресов памяти в системах с теговой архитектурой
Более радикальные меры для защиты памяти (и не только) предприняты в системах с теговой архитектурой — МВК Эльбрус , Burroughs 5000/6700/7700 и др. Как…
-
Аппаратная защита памяти и процессора
В целях совместного использования системных ресурсов (памяти, процессора, внешних устройств) несколькими программами, требуется, чтобы аппаратура и…