Plug and Play, а также операционные системы, начиная с Windows 95b (OSR 2), поддерживают функцию управления прерываниями. В таких компьютерах всю заботу о прерываниях берет на себя система. Обратите внимание, что оригинальная версия Windows 95, а также Windows 95а эту функцию не поддерживают.
Чаще всего BIOS назначает уникальные прерывания устройствам PCI. А если операционная система поддерживает управление прерываниями, то эту задачу она выполняет самостоятельно. Следует заметить, что, даже если активизирована системная функция управления прерываниями, их начальное распределение берет на себя BIOS. Если свободных прерываний недостаточно, то операционная система распределяет одно прерывание между несколькими устройствами PCI. Если операционная система не обладает функцией управления прерываниями, то она просто деактивизирует устройство до появления свободного прерывания.
Чтобы определить, поддерживается ли описанная функция в вашем компьютере, выполните ряд действий.
1. Щелкните на кнопке Пуск (Start) и выберите команду НастройкаОПанель управления (SettingsOControl Panel).
2. Дважды щелкните на пиктограмме Система (System).
3. В появившемся окне активизируйте вкладку Устройства (Device Manager).
4. Щелкните на знаке "+" возле группы Системные устройства (System Devices).
5. Дважды щелкните на компоненте Шина PCI (PCI Bus). В появившемся окне активизируйте вкладку Управление IRQ (IRQ Steering). Вы увидите группу флажков.
Управление прерываниями осуществляется с помощью нескольких таблиц. В поисках необходимых параметров Windows последовательно просматривает такие таблицы IRQ:
■ ACPI BIOS;
■ спецификации MS;
■ PCIBIOS 2.1 в защищенном режиме;
■ PCIBIOS 2.1 в реальном режиме.
Для устранения проблем с распределением прерываний попробуйте по одному отключать установленные по умолчанию флажки во вкладке Управление IRQ. В первую очередь используйте таблицу IRQ из ACPI BIOS, а если проблема не будет устранена — таблицу IRQ из PCIBIOS 2.1 в защищенном режиме. Обратите внимание, что описанные действия подходят только для Windows 98; в Windows 95 эти параметры несколько отличаются.
Шина PCI позволяет использовать два типа устройств — bus master (инициатор) и slave (назначение). Устройство bus master берет на себя управление шиной и инициирует передачу данных на устройство slave. Согласно спецификации PC 97 все устройства PCI могут выступать как в роли инициирующего, так и в роли получателя. В настоящее время практически все разъемы PCI поддерживают "универсальные" устройства.
Шиной PCI управляет арбитр, который является частью контроллера шины PCI в наборе микросхем системной логики. Именно этот арбитр управляет доступом всех устройств к шине. Перед "захватом" управления шиной устройство Bus Master получает на это разрешение у арбитра. Примерно аналогичные действия происходят в локальной сети: сначала отправляется запрос на выполнение определенных действий, а при получении положительного ответа на него выполняются сами действия.