Понятие прерываний. Виды прерываний. Объяснить механизм перехода на подпрограмму обслуживания прерываний.
Прерывание-сигнал от программного или аппаратного обеспечения, сообщающий процессору о наступлении какого-либо события, требующего немедленного внимания. Прерывание извещаетпроцессор о наступлении высокоприоритетного события,. Требующего прерывания текущего кода, выполняемого процессором. Процессор отвечает приостановкой своей текущей активности, сохраняя свое состояние и выполняя функцию, называемую обработчиком прерывания,которая реагирует на событие и обслуживает его, после чего возвращает управление в прерванный код.
Прерывания делятся на:
· Асинхронные-события, которые исходят от внешних аппаратных устройств и могут произойти в любой произвольный момент: сигнал от таймера, сетевой карты, или дискового накопителя, нажатие клавиш клавиатуры.
· Синхронные-события в самом процессоре как результат нарушения каких-то условий при исполнении машинного кода: деление на ноль или переполнение стека, обращение к недопустимым адресам памяти или недопустимый код операции.
· Программные-инициируются исполнением специальной инструкции в коде программы.
Прерывание заключаетсяв выполнении микропроцессором следующих действий:
· Регистрации его состояния процессора, предшествовавшего прерыванию
· Временное прекращение текущего процесса, вызванное событием, инициированным прерывание.
· Выполнение программы обработки прерывания.
|
|
· Возвращение к прекращенному процессу.
Различают следующие типы прерываний:
· Внешнее прерывание-прерывание от устройства, не входящего в состав ЦП или от процесса внешнего по отношению к текущему.
· Внутреннее прерывание-прерывание, обусловленное внутренними по отношению к текущему процессу причинами.
· Прерывание ввода-вывода.Прерывание такого рода происходит при завершении каждой операции ввода-вывода.
· Программное прерывание-вызывается машинной командой в процессе управления.
Дата добавления: 2018-08-06; просмотров: 502; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!