Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции / СПО2.doc
Скачиваний:
114
Добавлен:
11.02.2014
Размер:
527.87 Кб
Скачать

10. Прерывания

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

Таким образом, ПРЕРЫВАНИЕ - что принудительная передача управления от выполняемой программы к системе (а через нее - к соответствующей программе обработки прерывания), происходящая при возникновении определенного события.

Механизм обработки прерываний независимо от архитектуры вычислительной системы включает следующие элементы:

1. Установление факта прерывания и идентификация прерывания.

2. Запоминание состояния прерванного процесса

3. Управление аппаратно передается подпрограмме обработки прерывания

4. Сохранение информации о прерванной программе, которую не удалось спасти ив шаге 2 с помощью действий аппаратуры

5. Обработка прерывания.

6. Восстановление информации, относящейся к прерванному процессу.

7. Возврат в прерванную программу.

Виды прерываний:

  • внешние (от таймера, от внешних устройств из-за нарушения питания, от другого процессора или другой системы)

  • Внутренние (при нарушении адресации, при делении, при переполнении или исчезновении порядка, при обнаружении ошибок четности).

  • При обращении к супервизору

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

  • Программные прерывания (происходят по соответствующей программе прерывание)

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

Распределение прерываний по уровням приоритета

высокий приоритет

1. средства контроля процессора

2. системный таймер

3. внешние устройства (магнитные диски, сетевое оборудование и др.)

4. программное прерывание

низкий приоритет

Учет приоритета может быть как в технических средствах, так и определяться ОС.

Процессор может обладать средствами защиты:

  • отклонение системы прерываний

  • маскирование (запрет) отдельных сигналов прерывания.

Маскирование позволяет реализовывать различные дисциплины обслуживания:

1.с относительными приоритетами (обслуживание не прерывается даже при наличии запросов с более высоким приоритетом). Для организации такой дисциплины необходимо в программе обслуживания данного запроса наложить маски на все остальные сигналы или фактически просто отключить систему прерываний.

2. с абсолютными приоритетами (всегда обслуживаются прерывания с наивысшим приоритетом). Для реализации данного режима необходимо на время обработки прерываний наложить маски на все запросы с более низким приоритетом.

  1. по принципу стека (LCFS) (для этого маски не накладываются ни на один сигнал прерывания). Причины прерывания определяет ОС, т.е. её модуль, который называется супервизором прерывания.

  1. Дисциплины диспетчеризации

  1. Без приоритетные. Выбор задачи производится в заранее установленном порядке без учета их относительной важности:

  • Линейные (в порядке очереди, случайный выбор процесса)

  • Циклические

2. Приоритетные. Отдельной задаче предоставляется преимущество попасть в состояние исполнения:

  • С фиксированным приоритетом (с относительным приоритетом, абсолютным приоритетом, адаптивное обслуживание)

  • С динамическим приоритетом (зависят от времени ожидания или времени обслуживания)

  1. FCFS (first come- first served). Задачи обслуживаются в порядке очереди. (API)

  2. SJN (shortest job next). Данная дисциплина требует, чтобы для каждого задания, была известна оценка потребности машинного времени. (UNIX, VAX, VMS, OS/2, WINDOWS NT)

  3. SRT- в данном случае следующие задания требуют меньше всего времени для своего завершения.(Novell Net Ware )

  4. RR- предполагается, что каждая задача получает процессорное время порциями. (Intel 8088/86i, MS-DOS)

Соседние файлы в папке лекции