Хелпикс

Главная

Контакты

Случайная статья





Получить полный текст



Получить полный текст

 

Опрашиваемое прерывание. При использовании механизма опрашиваемого прерывания запрос прерывания содержит только информацию об уровне приоритета. С каждым уровнем может быть связано несколько устройств, следовательно, несколько программ-обработчиков. Процессор должен определить, какой именно из обработчиков связан с этим прерыванием. Для этого он выполняет опрос всех устройств, имеющих данный уровень приоритета, пока одно из них не ответит, выставив на шину сигнал. Тогда уже диспетчер прерываний вызывает конкретный обработчик. Если же с каждым уровнем прерываний связано только одно устройство, то определение нужного обработчика происходит немедленно, как при векторном способе (шины ISA, EISA, MCA, PCI).

Существуют варианты смешанного типа обработки.

Пример

Платформа компьютеров на основе процессоров Intel Pentium: процессор использует векторный механизм, а шины подключения внешних устройств (PCI, ISA, EISA, MCA) имеют опрашиваемый механизм прерываний. Контроллеры внешних устройств выставляют на шину не вектор, а сигнал некоторого уровня приоритета прерывания. Контроллер прерываний после взаимодействия с внешним устройством отображает этот сигнал на определенный номер вектора прерывания. Вектор прерываний состоит из 4 байт и задает новые значения регистров IP и CS. Таблица векторов прерываний занимает 1024 байта, следовательно, в ней может быть задано 256 векторов прерываний.

Контроллер прерываний поддерживает 8 уровней (линий) приоритета. Компьютеры на базе процессора Intel используют два контроллера и поддерживают 15 линий запросов на прерывание. Максимальный приоритет соответствует уровню 0. Второй контроллер подключен к IRQ2, поэтому дополнительный набор уровней с 8 по 15 имеет приоритет между 2 и 3. Запросы на прерывания 0–7 соответствуют векторам прерываний от $8 до $0F; запросы на прерывания 8–15 обслуживаются векторами от $70 до $77.

Линии IRQ(interrupt Request – запрос на прерывание):

0 – системный таймер;

1 – контроллер клавиатуры;

2 – сигнал возврата по кадру (соединен с IRQ9);

3 – обычно COM2/COM4 (последовательный порт);

4 – обычно COM1/COM3 (последовательный порт);

5 – обычно свободен или используется звуковой картой;

6 – контроллер FDD;

7 – параллельный порт LPT1;

8 – часы реального времени;

9 – линия параллельна IRQ2;

10 – свободно;

11 – свободно;

12 – обычно контроллер мыши типа PS/2;

13 – математический сопроцессор;

14 – обычно контроллер IDE0 (первый канал);

15 – обычно контроллер IDE1 (второй канал);



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.