Векторные прерывания - PullRequest
       67

Векторные прерывания

4 голосов
/ 29 июня 2011

В чем разница между векторными и не векторными прерываниями?

Я думал, что все прерывания должны быть векторными прерываниями ... В конце концов, не все прерывания имеют номер вектора и, следовательно, вектор с определенным ISR [процедура обработки прерываний]

(адрес ISR в таблице страниц равен 4 * vector # в устройстве, которое сгенерировало прерывание; предполагается 32-разрядная архитектура адресов) ....

Спасибо!

Ответы [ 3 ]

6 голосов
/ 29 июня 2011

См. здесь :

  • Векторные прерывания: устройство сообщает ЦПУ, что оно требует внимания, идентифицируя себя через прерывание
  • Опрошенные прерывания: ЦП должен опроснесколько устройств, чтобы увидеть, какое из них потребовало внимания
4 голосов
/ 29 июня 2011

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

В случае прерывания Vectored номер вектора указывает адрес обработчика, следовательно, процессор переходит к адресу и выполняет обработчик.

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

0 голосов
/ 03 февраля 2015

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

...