Запрос на прерывание (архитектура ПК)

редактировать
Аппаратный сигнал, отправляемый процессору для прерывания выполняющейся программы и обработки ввода

В компьютер, запрос прерывания (или IRQ ) - это аппаратный сигнал, отправляемый процессору, который временно останавливает запущенную программу и разрешает выполнение специальной программы, обработчик прерывания, чтобы запустить его. Аппаратные прерывания используются для обработки таких событий, как получение данных от модема или сетевой карты, нажатие клавиш или движения мыши.

Строки прерывания часто идентифицируются индексом с форматом IRQ, за которым следует номер. Например, в семействе программируемых контроллеров прерываний Intel 8259 (PIC ) имеется восемь входов прерывания, обычно обозначаемых как IRQ0 - IRQ7. В x86 компьютерных системах , использующих две из этих PIC, объединенный набор линий обозначается как IRQ0 - IRQ15. Технически эти линии называются от IR0 до IR7, а линии на шине ISA, к которой они были подключены исторически, имеют имена от IRQ0 до IRQ15 (хотя исторически по мере увеличения количества аппаратных устройств общее возможное количество прерываний был увеличен с помощью каскадных запросов, путем каскадирования одного из номеров IRQ в другой набор или наборы пронумерованных IRQ, обрабатываемых одним или несколькими последующими контроллерами).

Более новые системы x86 включают усовершенствованный программируемый контроллер прерываний (APIC), который соответствует архитектуре Intel APIC. Эти APIC поддерживают интерфейс программирования для 255 физических аппаратных линий IRQ на APIC, при этом типичная система реализует поддержку всего около 24 аппаратных линий.

В первые годы развития персональных компьютеров управление IRQ часто вызывало озабоченность пользователей. С появлением устройств plug and play это было уменьшено.

Содержание

  • 1 Обзор
  • 2 IRQ x86
    • 2.1 Главный PIC
    • 2.2 Slave PIC
  • 3 Конфликты
  • 4 См. Также
  • 5 Ссылки
  • 6 Дополнительная литература
  • 7 Внешние ссылки

Обзор

При работе с аппаратным обеспечением персонального компьютера, установке и удалении устройств система полагается на запросы на прерывание. Существуют настройки по умолчанию, которые настроены в системе BIOS и распознаются операционной системой. Эти настройки по умолчанию могут быть изменены опытными пользователями. Современная технология plug and play не только уменьшила необходимость беспокоиться об этих настройках, но также практически устранила ручную настройку.

IRQ x86

Ранние ПК, использующие процессоры Intel 8086/8088, имели только один PIC и, следовательно, ограничены восемью прерываниями. Он был расширен до двух PIC с появлением компьютеров на базе 286.

Обычно в системах, использующих PIC Intel 8259, используется 16 IRQ. IRQ от 0 до 7 управляются одним PIC Intel 8259, а IRQ с 8 по 15 - вторым Intel 8259 PIC. Первый PIC, главный, является единственным, который напрямую сигнализирует CPU. Второй PIC, подчиненное устройство, вместо этого передает сигнал мастеру на своей линии IRQ 2, и мастер передает сигнал процессору. Таким образом, для оборудования доступно только 15 строк запроса прерывания.

В более новых системах, использующих архитектуру Intel APIC, обычно доступно 24 IRQ, а дополнительные 8 IRQ используются для маршрутизации прерываний PCI, что позволяет избежать конфликта между динамически настраиваемыми прерываниями PCI и статически настроенными ISA прерывает. В ранних системах APIC только с 16 IRQ или только с Intel 8259 контроллерами прерываний, линии прерывания PCI направлялись на 16 IRQ с использованием PIR, встроенного в южный мост.

Самый простой способ просмотреть эту информацию в Windows - использовать Диспетчер устройств или Системную информацию (msinfo32.exe). В Linux сопоставления IRQ можно просмотреть, выполнив cat / proc / interruptsили используя утилиту procinfo.

Master PIC

Slave PIC

  • IRQ 8 - часы реального времени (RTC)
  • IRQ 9 - Прерывание управления системой Advanced Configuration and Power Interface (ACPI) на наборах микросхем Intel. Другие производители наборов микросхем могут использовать другое прерывание для этой цели или сделать его доступным для использования периферийными устройствами (любые устройства, настроенные для использования IRQ 2, фактически будут использовать IRQ 9)
  • IRQ 10 - прерывание остается открытым для использование периферийных устройств (открытое прерывание / доступно, SCSI или NIC )
  • IRQ 11 - прерывание остается открытым для использования периферийных устройств (открытое прерывание / доступно, SCSI или NIC)
  • IRQ 12 - мышь на разъеме PS / 2
  • IRQ 13 - ЦП сопроцессор или интегрированный блок с плавающей запятой или межпроцессор прерывание (использование зависит от ОС)
  • IRQ 14 - основной канал ATA (интерфейс ATA обычно обслуживает жесткие диски и приводы компакт-дисков )
  • IRQ 15 - вторичный канал ATA

Конфликты

В ранних IBM-совместимых персональных компьютерах конфликт IRQ - это некогда распространенная аппаратная ошибка, полученная, когда два устройства пытались использовать тот же запрос прерывания (или IRQ), чтобы сигнализировать о прерывании Prog расширяемый контроллер прерываний (PIC). PIC ожидает запросов прерывания только от одного устройства на линию, поэтому более одного устройства, отправляющего сигналы IRQ по одной и той же линии, обычно вызывают конфликт IRQ, который может привести к зависанию компьютера.

. Например, если модем карта расширения добавляется в систему и назначается IRQ4, которое традиционно назначается последовательному порту 1, это, вероятно, вызовет конфликт IRQ. Первоначально IRQ 7 был обычным выбором для использования звуковой карты , но позже было использовано IRQ 5, когда было обнаружено, что IRQ 7 будет мешать порту принтера (LPT1). Последовательные порты часто отключаются, чтобы освободить линию IRQ для другого устройства. IRQ 2/9 - это традиционная линия прерывания для порта MIDI MPU-401, но это конфликтует с прерыванием управления системой ACPI (SCI жестко привязан к IRQ9 на наборах микросхем Intel); это означает, что карты ISA MPU-401 с аппаратным IRQ 2/9 и драйверы устройств MPU-401 с жестко запрограммированным IRQ 2/9 не могут использоваться в режиме управления прерываниями в системе с включенным ACPI.

В некоторых редких случаях два устройства могут использовать один и тот же IRQ, если они не используются одновременно. Чтобы решить эту проблему, более поздняя спецификация шины PCI допускает совместное использование IRQ с дополнительной поддержкой прерываний с сигнализацией сообщений (MSI) в более поздних версиях. PCI Express вообще не имеет линий физического прерывания и использует исключительно MSI.

См. Также

Ссылки

Дополнительная литература

  • Gilluwe, Frank van. Недокументированный ПК, второе издание, Addison-Wesley Developers Press, 1997. ISBN 0-201-47950-8
  • Шэнли, Том; Андерсон, Дон (1995). Swindle, Джон (ред.). Архитектура системы ISA (3-е изд.). Mindshare, Inc. / Эддисон-Уэсли Паблишинг Компани. ISBN 0-201-40996-8. ISBN 978-0-201-40996-3.[1]
  • Солари, Эдвард. Архитектура и дизайн аппаратного и программного обеспечения PCI и PCI-X, шестое издание, Research Tech Inc., 2004. ISBN 0-9760865-0-6

Внешние ссылки

Последняя правка сделана 2021-05-24 05:05:49
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте