Операционные системы, среды и оболочки. Макаренко С.И. - 69 стр.

UptoLike

Составители: 

Приоритезация означает, что все источники прерываний делятся на
классы и каждому классу назначается свой уровень приоритета запроса на
прерывание. Приоритеты могут обслуживаться как относительные и
абсолютные.
Маскирование — при обслуживании некоторого запроса все запросы с
равным или более низким приоритетом маскируются, то есть не
обслуживаются. Схема маскирования предполагает возможность
временного маскирования (приостановки) прерываний любого класса
независимо от уровня приоритета.
Обобщенно последовательность действий аппаратных и
программных средств по обработке прерывания можно описать
следующими этапами.
1. При возникновении сигнала (для аппаратных прерываний) или
условия (для внутренних прерываний) прерывания происходит первичное
аппаратное распознавание типа прерывания. В зависимости от поступившей
в процессор информации (уровень прерывания, вектор прерывания или тип
условия внутреннего прерывания) происходит автоматический вызов
процедуры обработки прерывания, адрес которой находится в специальной
таблице операционной системы, размещаемой либо в регистрах процессора,
либо в определенном месте оперативной памяти.
2. Автоматически сохраняется некоторая часть контекста
прерванного потока, которая позволит ядру возобновить исполнение
потока процесса после обработки прерывания. В это подмножество обычно
включаются значения счетчика команд, слова состояния машины, хранящего
признаки основных режимов работы процессора, а также нескольких
регистров общего назначения, которые требуются программе обработки
прерывания. Может быть сохранен и полный контекст процесса, если ОС
обслуживает данное прерывание со сменой процесса.
3. Одновременно с загрузкой адреса процедуры обработки прерываний
в счетчик команд может автоматически выполняться загрузка нового
значения слова состояния машины, которое определяет режимы работы
процессора при обработке прерывания, в том числе работу в
привилегированном режиме. Прерывания практически во всех
мультипрограммных ОС обрабатываются в привилегированном режиме
модулями ядра, так как при этом обычно нужно выполнить ряд критических
операций, от которых зависит жизнеспособность системы, управлять
внешними устройствами, перепланировать потоки и т. п.
4. Временно запрещаются прерывания данного типа, чтобы не
образовалась очередь вложенных друг в друга потоков одной и той же
процедуры. Многие процессоры автоматически устанавливают признак
запрета прерываний в начале цикла обработки прерывания, в противном
случае это делает программа обработки прерываний.
69
     Приоритезация означает, что все источники прерываний делятся на
классы и каждому классу назначается свой уровень приоритета запроса на
прерывание. Приоритеты могут обслуживаться как относительные и
абсолютные.
      Маскирование — при обслуживании некоторого запроса все запросы с
равным или более низким приоритетом маскируются, то есть не
обслуживаются. Схема маскирования предполагает возможность
временного маскирования (приостановки) прерываний любого класса
независимо от уровня приоритета.
     Обобщенно последовательность действий аппаратных и
программных средств по обработке прерывания можно описать
следующими этапами.
      1. При возникновении сигнала (для аппаратных прерываний) или
условия (для внутренних прерываний) прерывания происходит первичное
аппаратное распознавание типа прерывания. В зависимости от поступившей
в процессор информации (уровень прерывания, вектор прерывания или тип
условия внутреннего прерывания) происходит автоматический вызов
процедуры обработки прерывания, адрес которой находится в специальной
таблице операционной системы, размещаемой либо в регистрах процессора,
либо в определенном месте оперативной памяти.
      2. Автоматически сохраняется некоторая часть контекста
прерванного потока, которая позволит ядру возобновить исполнение
потока процесса после обработки прерывания. В это подмножество обычно
включаются значения счетчика команд, слова состояния машины, хранящего
признаки основных режимов работы процессора, а также нескольких
регистров общего назначения, которые требуются программе обработки
прерывания. Может быть сохранен и полный контекст процесса, если ОС
обслуживает данное прерывание со сменой процесса.
      3. Одновременно с загрузкой адреса процедуры обработки прерываний
в счетчик команд может автоматически выполняться загрузка нового
значения слова состояния машины, которое определяет режимы работы
процессора при обработке прерывания, в том числе работу в
привилегированном    режиме.      Прерывания     практически  во   всех
мультипрограммных ОС обрабатываются в привилегированном режиме
модулями ядра, так как при этом обычно нужно выполнить ряд критических
операций, от которых зависит жизнеспособность системы, — управлять
внешними устройствами, перепланировать потоки и т. п.
      4. Временно запрещаются прерывания данного типа, чтобы не
образовалась очередь вложенных друг в друга потоков одной и той же
процедуры. Многие процессоры автоматически устанавливают признак
запрета прерываний в начале цикла обработки прерывания, в противном
случае это делает программа обработки прерываний.

                                  69