Конспект лекций Часть 2 Челябинск 2015


Download 1.59 Mb.
Pdf ko'rish
bet30/70
Sana31.03.2023
Hajmi1.59 Mb.
#1310719
TuriКонспект
1   ...   26   27   28   29   30   31   32   33   ...   70
Bog'liq
ftd

приоритетными 
соотношениями 
или 
дисциплиной 
обслуживания
Дисциплина обслуживания определяет, какой из нескольких запросов, 
поступивших одновременно, подлежит обработке в первую очередь, и имеет ли 
право данный запрос прерывать ту или иную программу.
Совокупность всех возможных типов прерывания процессора представляет 
собой систему прерывания процессора. 
Число различных источников запросов прерывания может достигать десятков 
и даже сотен. Однако в ряде случаев многие запросы поступают от групп 
однотипных устройств, для обслуживания которых требуется одна и та же 
прерывающая программа (обработчик). Запросы от однотипных устройств 
целесообразно объединить в группы, каждой из которых будет соответствовать 
свой сигнал запроса прерывания. Уровнем или классом прерывания называется 
совокупность запросов, инициирующих одну и ту же прерывающую программу 
(обработчик) (рис. 22).


40 
ЗПК
1
За
пр
ос
ы
на
пр
ер
ы
ва
ни
я
РгЗП 
РгЗП – регистр запросов прерывания; 
ОСП – общий сигнал прерывания; 
ЗПК – запросы классов прерывания 
1
k
1
1
Сх
ем
а 
ра
сп
оз
нав
ан
ия
кл
ас
са
п
рер
ыв
ан
ия
1
ЗПК
k
ОСП








В процессор 
В контроллер 
прерываний 
Рис. 22. Разделение запросов на классы прерываний
Запросы от всех источников поступают в регистр запроса прерываний, 
устанавливая соответствующие его разряды в состояние 1, указывающее на 
наличие запроса прерывания. Запросы классов прерывания ЗПК
i
формируют 
элементы ИЛИ, объединяющие разряды регистра запроса прерываний, 
относящиеся к соответствующим уровням. Еще одна схема ИЛИ формирует 
общий сигнал прерывания, поступающий в устройство управления процессора. 
Он формируется при любом запросе прерывания.
Информация о конкретном источнике запроса, породившем запрос данного 
класса, содержится в коде прерывания, который отражает состояние разрядов 
регистра запроса прерывания, относящихся к данному классу прерываний. В 
процессе обработки прерывания информация этих разрядов подвергается анализу. 
Такое объединение прерываний в классы уменьшает объем аппаратуры, но 
замедляет работу обработчиков прерываний. После возврата управления 
прерываемой программе соответствующий триггер регистра запроса прерываний 
сбрасывается. 
Как правило, управление запоминанием и возвратом возложено на обработчик 
прерывания. В этом случае обработчик состоит из трех частей – 
подготовительной (пролог) и заключительной (эпилог), обеспечивающих 
переключение программ, и собственно прерывающей программы, выполняющей 
затребованные запросом операции. Время реакции определяется для запроса с 
наивысшим приоритетом (рис. 23) как временной интервал от момента 
поступления запроса прерывания до начала выполнения прерывающей 
программы. 


41 
 
Прерываемая 
программа 
t
р



Запрос 
прерываний 
Прерывающая 
программа 
(обработчик) 
t
p
– время реакции системы на прерывание; 
t
з
– время запоминания состояния прерываемой программы; 
t
ппр
– время собственно прерывающей программы; 
t
в
– время восстановления состояния прерванной программы 
t
з
t
ппр
t
в
Рис. 23. Упрощенная временная диаграмма процесса прерывания 
В большинстве случаев прерывания допускаются после выполнения любой 
текущей команды, время реакции на прерывание определяется, в основном
длительностью выполнения одной команды. При работе вычислительной машины 
с быстрыми технологическими процессами в реальном масштабе времени (т.е. в 
контурах управления реальных физических процессов) это время может оказаться 
недопустимо большим. Существуют задачи, при выполнении которых требуется 
немедленная реакция на ошибку, чтобы не допустить выполнения ошибочно 
сформированного кода команды. В этом случае в системе прерывания реализуется 
возможность прерывания после любого такта выполнения команды программы. 
Однако это требует запоминания, а потом восстановления гораздо большего 
объема информации, чем в случае прерывания после окончания команды, поэтому 
такая организация прерываний возможна только в вычислительных машинах со 
сверхбыстродействующей оперативной памятью достаточного объема. 
В случае, если во время обработки прерывания поступает запрос на 
прерывание с более высоким уровнем приоритета, управление передается 
обработчику прерывания более высокого приоритета, при этом работа 
обработчика 
прерывания 
с 
более 
низким 
уровнем 
приоритета 
приостанавливается. Возникает вложенность прерываний. Максимальное число 
программ, которые могут приостанавливать друг друга называется глубиной 

Download 1.59 Mb.

Do'stlaringiz bilan baham:
1   ...   26   27   28   29   30   31   32   33   ...   70




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling