КОМПЬЮТЕРНОЕ ЖЕЛЕЗО
HARDWARE FOR PC

Архитектурные компоненты IBM PC-совместимого компьютера

Архитектурные компоненты IBM PC-совместимого компьютера
Interruption Controller). Внутренние контроллеры процессоров связаны между собой по шине APIC, к которой подключена и «ответная часть» чипсета, преобра¬зующая запросы аппаратных прерываний в сигналы протокола APIC. В операци¬онном режиме такая связка также совместима с 8259 А.
12.3.1. Совместное использование прерываний
Линии запросов прерываний в компьютере, насыщенном дополнительными адап¬терами, являются самым дефицитным ресурсом, поэтому возникает желание ис¬пользовать эти линии совместно, то есть применять разделяемые прерывания меж¬ду несколькими устройствами (shared interrupts). Обработчики прерываний (программы) от разных устройств, разделяющих одну линию запроса (и следова¬тельно, общий вектор прерывания), должны быть выстроены в цепочку. В процес¬се обработки прерывания очередной обработчик в цепочке чтением известного ему регистра своего устройства должен определить, не это ли устройство вызвало пре¬рывание. Если это, то обработчик должен выполнить необходимые действия и сбросить сигнал запроса прерывания от своего устройства, после чего передать управление следующему обработчику в цепочке; в противном случае он просто передает управление следующему обработчику.
Разделяемые прерывания для разнотипных устройств в общем случае работо¬способными считать нельзя. Во-первых, у каждого устройства факт прерывания программно обнаруживается по-своему, и этот способ знает только драйвер этого устройства. Так что программно для совместного использования прерываний их обработчики должны уметь выстраиваться в цепочки, что на практике выполня¬ется не всегда корректно. Во-вторых, возможны потери прерываний от устройств, требующих быстрой реакции. Это может происходить, если обработчик такого устройства окажется в конце цепочки, а предшествующие ему обработчики окажут¬ся «нерасторопными» (не самым быстрым способом обнаружат, что прерывание — не их). Поведение системы в такой ситуации может меняться в зависимости от порядка загрузки драйверов.

Hosted by uCoz