Конспект лекций Часть 2 Челябинск 2015
Download 1.59 Mb. Pdf ko'rish
|
ftd
- Bu sahifa navigatsiya:
- Уровнем или классом
приоритетными
соотношениями или дисциплиной обслуживания. Дисциплина обслуживания определяет, какой из нескольких запросов, поступивших одновременно, подлежит обработке в первую очередь, и имеет ли право данный запрос прерывать ту или иную программу. Совокупность всех возможных типов прерывания процессора представляет собой систему прерывания процессора. Число различных источников запросов прерывания может достигать десятков и даже сотен. Однако в ряде случаев многие запросы поступают от групп однотипных устройств, для обслуживания которых требуется одна и та же прерывающая программа (обработчик). Запросы от однотипных устройств целесообразно объединить в группы, каждой из которых будет соответствовать свой сигнал запроса прерывания. Уровнем или классом прерывания называется совокупность запросов, инициирующих одну и ту же прерывающую программу (обработчик) (рис. 22). 40 ЗПК 1 За пр ос ы на пр ер ы ва ни я РгЗП РгЗП – регистр запросов прерывания; ОСП – общий сигнал прерывания; ЗПК – запросы классов прерывания 1 k 1 1 Сх ем а ра сп оз нав ан ия кл ас са п рер ыв ан ия 1 ЗПК k ОСП 0 0 1 0 . . . . В процессор В контроллер прерываний Рис. 22. Разделение запросов на классы прерываний Запросы от всех источников поступают в регистр запроса прерываний, устанавливая соответствующие его разряды в состояние 1, указывающее на наличие запроса прерывания. Запросы классов прерывания ЗПК i формируют элементы ИЛИ, объединяющие разряды регистра запроса прерываний, относящиеся к соответствующим уровням. Еще одна схема ИЛИ формирует общий сигнал прерывания, поступающий в устройство управления процессора. Он формируется при любом запросе прерывания. Информация о конкретном источнике запроса, породившем запрос данного класса, содержится в коде прерывания, который отражает состояние разрядов регистра запроса прерывания, относящихся к данному классу прерываний. В процессе обработки прерывания информация этих разрядов подвергается анализу. Такое объединение прерываний в классы уменьшает объем аппаратуры, но замедляет работу обработчиков прерываний. После возврата управления прерываемой программе соответствующий триггер регистра запроса прерываний сбрасывается. Как правило, управление запоминанием и возвратом возложено на обработчик прерывания. В этом случае обработчик состоит из трех частей – подготовительной (пролог) и заключительной (эпилог), обеспечивающих переключение программ, и собственно прерывающей программы, выполняющей затребованные запросом операции. Время реакции определяется для запроса с наивысшим приоритетом (рис. 23) как временной интервал от момента поступления запроса прерывания до начала выполнения прерывающей программы. 41 Прерываемая программа t р t t t Запрос прерываний Прерывающая программа (обработчик) t p – время реакции системы на прерывание; t з – время запоминания состояния прерываемой программы; t ппр – время собственно прерывающей программы; t в – время восстановления состояния прерванной программы t з t ппр t в Рис. 23. Упрощенная временная диаграмма процесса прерывания В большинстве случаев прерывания допускаются после выполнения любой текущей команды, время реакции на прерывание определяется, в основном, длительностью выполнения одной команды. При работе вычислительной машины с быстрыми технологическими процессами в реальном масштабе времени (т.е. в контурах управления реальных физических процессов) это время может оказаться недопустимо большим. Существуют задачи, при выполнении которых требуется немедленная реакция на ошибку, чтобы не допустить выполнения ошибочно сформированного кода команды. В этом случае в системе прерывания реализуется возможность прерывания после любого такта выполнения команды программы. Однако это требует запоминания, а потом восстановления гораздо большего объема информации, чем в случае прерывания после окончания команды, поэтому такая организация прерываний возможна только в вычислительных машинах со сверхбыстродействующей оперативной памятью достаточного объема. В случае, если во время обработки прерывания поступает запрос на прерывание с более высоким уровнем приоритета, управление передается обработчику прерывания более высокого приоритета, при этом работа обработчика прерывания с более низким уровнем приоритета приостанавливается. Возникает вложенность прерываний. Максимальное число программ, которые могут приостанавливать друг друга называется глубиной Download 1.59 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling