Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Прерывания. Механизм прерываний



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

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

Существует два общих класса прерываний:

· внутренние (инициируются состоянием процессора или командой)

· внешние (инициируются сигналом от других компонентов системы)

Причины:

1. События, происходящие в периферийных устройствах (внешн)

2. Программное прерывание – вызов супервизора (внутр)

3. Неопределенные события в процессах. (внутр)

4. Действия оператора. (внешн)

5. Прерывания по таймеру. (внешн)

Каждой конкретной причине прерывания назначен номер от 0 до 255. Некоторые номера прерываний уже назначены аппаратно процессором, другие присваиваются аппаратной системой, в которую встроен процессор. (Например, прерывания дискового накопителя). Еще одни зарезервированы для дальнейшего расширения , а все остальные могут использоваться программами. Когда возникает прерывание, процессор использует номер прерывания, как индекс в таблице. Из таблицы извлекается адрес обработки прерывания. Обработчик вызывается для производства конкретной обработки, требуемой прерыванием. Похоже, как будто в программе в точке прерывания вставлена команда вызова.

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

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

Процессор имеет два входа, по которым внешние устройства могут его остановить: ВХОД NMI- немаскируемого прерывания и ВХОД INTER- маскируемого прерывания. Маска прерываний – средство выборочного подавления прерывания в тех случаях, когда их обработку можно отложить на более позднее время.

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

 

 

 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.