СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Презентация № 8 Последовательность обработки прерываний

Категория: Прочее

Нажмите, чтобы узнать подробности

Выполните задания в презентации

Ответы разместите в чат

Оценки после проверки ответов

Просмотр содержимого документа
«Презентация № 8 Последовательность обработки прерываний»

Лекция 8. Последовательность обработки прерываний (на примере выполнения операций ввода/вывода) 090201 Компьютерные сети и комплексы ОП.07 Операционные системы и среды

Лекция 8. Последовательность обработки прерываний (на примере выполнения операций ввода/вывода)

090201 Компьютерные сети и комплексы

ОП.07 Операционные системы и среды

Часть 1 Аппаратные средства прерываний

Часть 1

Аппаратные средства прерываний

Порядок возникновения прерываний Зачем шина устройствам ввода-вывода? Зачем нужно устройствам прерывания?

Порядок возникновения прерываний

  • Зачем шина устройствам ввода-вывода?
  • Зачем нужно устройствам прерывания?
Порядок возникновения прерываний Зачем шина устройствам ввода-вывода? (Ответ: Для связи между устройствами и контроллером используются линии прерываний на шине). Зачем нужно устройствам прерывание? (Ответ: чтобы процессор знал о состоянии готовности устройства).

Порядок возникновения прерываний

  • Зачем шина устройствам ввода-вывода? (Ответ: Для связи между устройствами и контроллером используются линии прерываний на шине).
  • Зачем нужно устройствам прерывание? (Ответ: чтобы процессор знал о состоянии готовности устройства).
ШАГ № 1 При возникновении сигнала (для аппаратных прерываний) или условия (для внутренних прерываний) прерывания происходит первичное аппаратное распознавание типа прерывания. Если прерывание данного типа в настоящий момент запрещены (приоритетной схемой или механизмом маскирования), то процессор продолжает поддерживать естественный ход выполнения команд. В противном случае в зависимости от поступившей в процессор информации (уровень прерывания, вектор прерывания или тип условия внутреннего прерывания) происходит автоматический вызов процедуры обработки прерывания, адрес которой находится в специальной таблицы операционной системы, размещаемой либо в регистрах процессора, либо в определенном месте оперативной памяти.

ШАГ № 1

  • При возникновении сигнала (для аппаратных прерываний) или условия (для внутренних прерываний) прерывания происходит первичное аппаратное распознавание типа прерывания.
  • Если прерывание данного типа в настоящий момент запрещены (приоритетной схемой или механизмом маскирования), то процессор продолжает поддерживать естественный ход выполнения команд.
  • В противном случае в зависимости от поступившей в процессор информации (уровень прерывания, вектор прерывания или тип условия внутреннего прерывания) происходит автоматический вызов процедуры обработки прерывания, адрес которой находится в специальной таблицы операционной системы, размещаемой либо в регистрах процессора, либо в определенном месте оперативной памяти.
ШАГ № 2 Автоматически сохраняется некоторая часть контекста прерванного потока, которая позволит ядру возобновить исполнение потока процесса после обработки прерывания. В это подмножество обычно включаются значения счетчика команд, слова состояния машины, хранящего признаки основных режимов работы процессора (пример такого слова – регистр FL), а также нескольких регистров общего назначения, которые требуются программе обработки прерывания. Может быть сохранен и полный контекста процесса, если ОС обслуживает данное прерывание со сменой процесса. Однако в общем случае это не обязательно, часто обработка прерываний выполняется без вытеснения текущего процесса.

ШАГ № 2

  • Автоматически сохраняется некоторая часть контекста прерванного потока, которая позволит ядру возобновить исполнение потока процесса после обработки прерывания.
  • В это подмножество обычно включаются значения счетчика команд, слова состояния машины, хранящего признаки основных режимов работы процессора (пример такого слова – регистр FL), а также нескольких регистров общего назначения, которые требуются программе обработки прерывания.
  • Может быть сохранен и полный контекста процесса, если ОС обслуживает данное прерывание со сменой процесса. Однако в общем случае это не обязательно, часто обработка прерываний выполняется без вытеснения текущего процесса.
Задание № 1 Впишите слово: Система прерываний позволяет ОС реагировать на внешние события, происходящие асинхронно вычислительному процессу: сигналы ____________ устройства ввода-вывода, аварийные сигналы аппаратуры вычислительной системы и т.п.

Задание № 1

  • Впишите слово:
  • Система прерываний позволяет ОС реагировать на внешние события, происходящие асинхронно вычислительному процессу: сигналы ____________ устройства ввода-вывода, аварийные сигналы аппаратуры вычислительной системы и т.п.
Часть 2 Программные средства прерываний

Часть 2

Программные средства прерываний

Точное прерывание Что такое счетчик команд? Что такое программа?

Точное прерывание

  • Что такое счетчик команд?
  • Что такое программа?
Точное прерывание Что такое счетчик команд? (Ответ: Счетчик команд - это один из наиболее важных регистров микропроцессора). 2. Что такое программа? (Ответ: Программа – это последовательность команд, которые хранятся в памяти компьютера и должно поступать в микропроцессор в строго определенном порядке).

Точное прерывание

  • Что такое счетчик команд?

(Ответ: Счетчик команд - это один из наиболее важных регистров микропроцессора).

2. Что такое программа?

(Ответ: Программа – это последовательность команд, которые хранятся в памяти компьютера и должно поступать в микропроцессор в строго определенном порядке).

ШАГ № 3 Одновременно с загрузкой адреса процедуры обработки прерываний в счетчик команд может автоматически выполняться загрузка нового значения слова состояния машины (или другой системной структуры, например селектора кодового сегмента в процессоре Pentium), которое определяет режимы работы процессора при обработке прерывания, в том числе работу в привилегированном режиме. В некоторых моделях процессоров переход в привилегированный режим за счет смены состояния машины при обработке прерывания является единственным способом смены режима. Прерывания практически во всех мультипрограммных ОС обрабатываются в привилегированном режиме модулями ядра, так как при этом обычно нужно выполнять ряд критических операций, от которых зависит жизнеспособность системы, - управлять внешними устройствами, перепланировать потоки и т.п.

ШАГ № 3

  • Одновременно с загрузкой адреса процедуры обработки прерываний в счетчик команд может автоматически выполняться загрузка нового значения слова состояния машины (или другой системной структуры, например селектора кодового сегмента в процессоре Pentium), которое определяет режимы работы процессора при обработке прерывания, в том числе работу в привилегированном режиме.
  • В некоторых моделях процессоров переход в привилегированный режим за счет смены состояния машины при обработке прерывания является единственным способом смены режима. Прерывания практически во всех мультипрограммных ОС обрабатываются в привилегированном режиме модулями ядра, так как при этом обычно нужно выполнять ряд критических операций, от которых зависит жизнеспособность системы, - управлять внешними устройствами, перепланировать потоки и т.п.
ШАГ № 4 Временно запрещаются прерывания данного типа, чтобы не образовывались очередь вложенных друг в друга потоков одной и той же процедуры. Детали выполнения этой операции зависят от особенностей аппаратной платформы, например может использоваться механизм маскирования прерываний. Многие процессоры автоматически устанавливают признак запрета прерываний в начале цикла обработки прерывания, в противном случае это делает программа обработки прерываний.

ШАГ № 4

  • Временно запрещаются прерывания данного типа, чтобы не образовывались очередь вложенных друг в друга потоков одной и той же процедуры. Детали выполнения этой операции зависят от особенностей аппаратной платформы, например может использоваться механизм маскирования прерываний. Многие процессоры автоматически устанавливают признак запрета прерываний в начале цикла обработки прерывания, в противном случае это делает программа обработки прерываний.
ШАГ № 5 После того как прерывание обработано ядром операционной системы, прерванный контекст восстанавливается и работа потока возобновляется прерванного места. Часть контекста восстанавливается аппаратно по команде возврата из прерываний (например, адрес следующей команды и слово состояние машины), а часть - программным способом, с помощью явных команд извлечения данных из стека. При возврате из прерывания блокировка повторных прерываний данного типа снимается.

ШАГ № 5

  • После того как прерывание обработано ядром операционной системы, прерванный контекст восстанавливается и работа потока возобновляется прерванного места. Часть контекста восстанавливается аппаратно по команде возврата из прерываний (например, адрес следующей команды и слово состояние машины), а часть - программным способом, с помощью явных команд извлечения данных из стека. При возврате из прерывания блокировка повторных прерываний данного типа снимается.
Задание № 2 ____________ – это последовательность команд, которые хранятся в памяти компьютера и должно поступать в микропроцессор в строго определенном порядке.

Задание № 2

  • ____________ – это последовательность команд, которые хранятся в памяти компьютера и должно поступать в микропроцессор в строго определенном порядке.
Спасибо за внимание !!!

Спасибо за внимание !!!