Программирование на JAVA

7.7, решение получается довольно простым: процессор выбирает за­прос с наивысшим приоритетом. Но если несколько устройств используют одну линию запроса прерывания, как на рис. 7.6, то необходим иной механизм.

В таком случае проще всего опрашивать регистры состояния устройств вво­да-вывода. Причем приоритеты этих устройств будут определяться порядком их опроса. При использовании векторных прерываний выбирается только одно уст­ройство, которое должно отправить свой код вектора прерывания. Широко рас­пространена схема соединения устройств в виде гирляндной цепи (рис. 7.8, а). При такой схеме линия запроса прерывания INTR является общей для всех устройств, а линия подтверждения прерывания INTA соединяет устройства в гарляндную цепь, так что сигнал по очереди проходит через каждое из них. Когда несколько устройств одновременно генерируют запрос прерывания и активизируется линия INTR, процессор отвечает установкой сигнала на линии INTA в значение 1. Первым этот сигнал получает устройство 1. Если обслуживание ему не требуется, оно пе­ресылает сигнал устройству 2. Если же устройство отправило запрос прерывания и ждет ответа, оно блокирует сигнал INTA и помещает свой идентификационный код на линии данных


<< назад вперед >>