Assembler для начинающих


Прерывания - часть 3


    редает управление программе обработки прерывания, соответствующей
    этому устройству.  Процессор атоматически управляет веторизацией
    зап росов на прерывания.  Программе обработки прерывания не
    требуется перед обработкой прерывания определять, какое устройство
    его вызвало.  Это сокращает время реакции на прерывание и упрощает
    программирование прерываний.
 
      В программамах встречаются такие участки, выполнение которых не
    может быть прервано.  Например, это может быть кусок программы,
    который должен выполняться очень быстро, чтобы закончить выполнение
    специфической задачи, или момент работы с данными, которые могут
    быть изменены программой обработки прерывания.  В обоих случаях
    программа должна иметь возможность задержать или предотвратить
    прерывания, т.е.  программа должна уметь не допускать возникновения
    прерываний во время выполнения таких критических участков.    После
    прохождения этих участков программа должна восстановить способность
    системы прерываний вызывать прерывания.  Программа не может
    отключать прерывания на слишком долгое время, иначе с устройством,
    запросившим прерывание, может произойти какая-нибудь неприятность.
    Если прерывание клавиатуры не считает символ до того как оператор
    нажмет другую клавишу, второй симол может быть потерян.  В 8088
    имеется возможность блокировать все внешние прерывания.  IBM PC
    имеет более развитую возможность выбирать, каким из устройств можно
    вызывать прерывание, а каким нет.  Программа может использовать эту
    возможность для выбора наиболее важных устройств, которым можно
    разрешить прерывания, а менее критическим запретить.  Способы
    отключения прерываний мы обсудим в следующих главах.



- Начало -  - Назад -  - Вперед -



Книжный магазин