запускаются запрошенные действия - инициализация, конфигурирование устройства, обмен данными и др.
драйвер получает доступ к устройству и проверяет причину возникновения прерывания;
процессор приостанавливает текущую работу и переключается на выполнение обработчика (в общем случае это некоторый драйвер);
по специальной таблице отыскивается адрес программы, ответственной за обработку прерывания с данным номером - обработчика прерывания;
процессор получает сигнал прерывания и его номер;
Прерывания - это базовый механизм реакции системы на возникающие события. Аппаратные прерывания, называемые обычно IRQ (Interrupt ReQuest) - это физические сигналы, с помощью которых контроллер устройства информирует процессор о необходимости обработать некоторый запрос. Условно схема обработки прерывания выглядит следующим образом:
Хорошо, когда после сборки или плановой модернизации компьютер с первого раза запускается и работает устойчиво и без глюков. Гораздо хуже, если возникают неожиданные проблемы - спонтанные перезагрузки и зависания, сбои программ, неработоспособность или "невидимость" устройств и т.п. Первая причина, которая обычно приходит в голову в таком случае - конфликт прерываний. А хорошо ли мы знаем природу этого явления, достаточно ли подготовлены r борьбе с ним?
Автор: Макс Курмаз, дата публикации: 23.12.2001
Комментариев нет:
Отправить комментарий