Прерывание

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

Виды прерываний:

  • Аппаратные — события от периферийных устройств (например, нажатия клавиш клавиатуры, движение мыши, сигнал от таймера, сетевой карты или дискового накопителя) — внешние прерывания, или события в микропроцессоре — (например, деление на ноль) — внутренние прерывания;
  • Программные — инициируются самой программой, т.е. уже синхронно, а не асинхронно. Программные прерывания могут служить для вызова сервисов операционной системы.

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

Вектор прерывания — ячейка памяти, содержащая адрес обработчика прерывания.

Перехват прерывания — изменение обработчика прерывания на свой собственный.

Вектора прерываний объединяются в таблицу векторов прерываний. Местоположение таблицы зависит от режима работы микропроцессора.

См. также

 
Начальная страница  » 
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ы Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9 Home