Операционные системы. Курс лекций



Диспетчеризация и приоретизация прерываний - часть 2


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

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

 

Таблица прерываний Windows NT

Уровни IRQL

высший приоритет (ошибка шины)

питание

межпроцессорное прерывание

таймер

устройство n

устройство 1

диспетчерский (DPC) (от ОС)

APC уровень системных вызовов от приложений

низший (само приложение)

 

IRQL текущего кода

 

заблокированные уровни запросов прерывания

 

 



 

Основные виды ресурсов

 

Реентирабельные – при прерывании модуля, его состояние сохраняется для последующего восстановления.

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

 




Начало  Назад  Вперед