Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Приоритет прерываний




Действия микропроцессора по обработке прерывания

Независимо от причины возникновения прерывания микропроцессор обрабатывает их одинаковым образом.

Закончив выполнение инструкции, в ходе которого возник запрос прерывания, микропроцессор сохраняет в стеке текущее содержимое регистра флагов и дальний адрес текущей (для прерывания по ошибке деления) или следующей команды (для всех остальных причин возникновения прерывания), т.е. записывает в стек сначала содержимое регистра флагов, затем содержимое регистра CS, а в конце – содержимое регистра IP. Затем в регистре флагов сбрасывается флажки разрешения прерывания IF и трассировки TF, чем обеспечивается блокировка возникновения новых маскируемых внешних прерываний и запрещаются пошаговые прерывания по выполнении каждой инструкции. Наконец, из таблицы векторов прерываний извлекается дальний адрес обработчика прерывания, и его компоненты загружаются в регистры CS и IP, благодаря чему производится переход на обработку прерывания.

Следует обратить внимание на то, что, когда происходит немаскируемое прерывание, следующие немаскируемые прерывания блокируются аппаратурой микропроцессора до выполнения инструкции возврата из прерывания IRET. Маскируемые прерывания при этом также оказываются запрещены, но за счёт сброса флажка IF в регистре флагов. Если этот флажок будет установлен, микропроцессор будет способен обрабатывать маскируемые прерывания, хотя останется заблокированным для немаскируемых прерываний.

Одновременно может возникать несколько запросов прерываний. В этом случае микропроцессор обслуживает их в соответствии с их приоритетами. Сначала обслуживается прерывание с высшим приоритетом, затем – с более низким (если в результате обслуживания более приоритетного запроса процессор не оказался замаскирован для менее приоритетного прерывания).

Высший приоритет имеют исключения деления, точки останова и переполнения и программные прерывания. Поскольку они взаимно исключают друг друга (могут произойти при выполнении только определённых инструкций микропроцессора), ситуация, когда необходимо обслужить одновременно несколько прерываний этих видов, возникнуть не может.

Следом по приоритету следует немаскируемое внешнее прерывание. Как уже отмечалось, если такое прерывание произошло, следующее немаскируемое прерывание может быть выполнено только после выполнения команды IRET, при этом не играет роли, обработку какого запроса прерывания данная команда завершает (аппаратура микропроцессора реагирует на сам факт выполнения инструкции IRET).

На третьем месте стоят маскируемые внешние прерывания. Поскольку выполнение прерывания приводит к сбросу флажка IF в регистре флагов, выполнение маскируемого прерывания откладывается до тех пор, пока флажок IF не будет вновь установлен.

Самый низкий приоритет имеет трассировочное прерывание.




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 478; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.