Интерфейсы периферийных устройств. Ключев А.О - 55 стр.

UptoLike

54
Прерывания следует рассматривать не только и не столько как реакцию
процессора на аномальные ситуации, а как естественный процесс, с помощью
которого реализуется поддержка большинства необходимых механизмов, таких
как виртуальная память, ввод/вывод и т. п. По образному выражению Питера
Нортона: "Прерываниеэто движущая сила компьютера".
Система прерываний представляет собой комплекс
аппаратных и
программных средств. Аппаратные средства системы прерываний обычно
называются блоком или контроллером прерываний. В ПК это PIC
(Programmable Interrupt Controller), т.е. отдельная микросхема 8259A. В
некоторых случаях контроллер прерываний интегрируется в кристалл
микропроцессора. Программные средства систем прерываний представляют
собой специальные программыобработчики прерываний (interrupt handler).
Назначение системы прерыванияреагировать на определенные события
путем прерывания работы
процессора по выполнению программы и
переключения процессора на выполнение другой программы, обслуживающей
соответствующую ситуацию. В момент возникновения определенного события
(причины) формируется сигнал прерывания, который поступает в процессор и
инициирует специальную операциюоперацию прерывания, обеспечивающую
прерывание одной программы и переключение процессора на выполнение
другой программы.
2.3.2 Классификация прерываний
В зависимости от
источника возникновения сигнала прерывания делятся
на:
Асинхронные или внешние (аппаратные) – события, которые исходят от
внешних источников (например, периферийных устройств) и могут
произойти в любой произвольный момент: сигнал от таймера, внешнего
интерфейса, АЦП и др.
Внутренниесобытия в самом процессоре как результат нарушения
каких-то условий при исполнении машинного
кода: деление на ноль или
переполнение, обращение к недопустимым адресам или недопустимый
код операции. Такого рода прерывания еще называются
исключительными ситуациями (exceptions).
Программные (частный случай внутреннего прерывания) –
инициируются исполнением специальной инструкции в коде
программы. Программные прерывания как правило используются для
обращения к функциям встроенного программного обеспечения
драйверов и операционной системы.
Аппаратные
прерывания могут возникать в произвольные моменты
времени и являются асинхронными по отношению к выполняемой программе.
С помощью аппаратных прерываний осуществляется взаимодействие
процессора с периферийными устройствами, а также сообщается о различных