7. Прерывания и исключения    
 СОДЕРЖАНИЕ
 Введение
 1. Развитие архитектуры
 2. Структура МП
 3. Ресурсы МП
 4. Управление памятью
 5. Защита
 6. Многозадачность
 7. Прерывания и исключения
 8. Инициализация МП
 9. Эмуляция 8086
 Глоссарий
 ПРАКТИКА
 1. Семантический разрыв
 2. CPUID
 3. Защищенный режим
 Вопросы и задания

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

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

Исключения являются для процессора внутренними событиями и сигнализируют о каких-либо ошибочных условиях при выполнении той или иной инструкции: деление на ноль, нарушение правил защиты, неприсутствие страницы и т.п.

Архитектура IA-32 предоставляет механизм обработки прерываний и исключений, прозрачный для прикладного и системного программного обеспечения. При возникновении прерывания или исключения текущая выполняемая задача автоматически приостанавливается на время выполнения обработчика, после чего ее выполнение возобновляется без потери непрерывности выполнения, кроме случаев, когда обработка прерывания или исключения вынуждает завершить программу.

Все прерывания и исключения имеют номер (иногда именуемый вектором) в диапазоне от 0 до 255. Номера 0...31 зарезервированы фирмой Intel для исключений.