Advanced Programmable Interrupt Controller

APIC (англ. Advanced Programmable Interrupt Controller) — поліпшений програмований контролер переривань. Він був доданий в процесорі Pentium другого покоління.

APIC являє собою розподілену систему: IOAPIC є частиною чипсета, а локальний APIC (LAPIC) вбудований у кожне процесорне ядро. Розширений контролер переривань є підсистемою розширеного конфігурування та управління енергоспоживанням (ACPI). Якщо вимкнути ACPI в BIOS, доведеться відмовитися і від використання розширеного контролера переривань.

Необхідність у новому контролері, здатному замінити програмований контролер переривань (PIC), виникла з появою таких проблем:

  • Поява багатоядерних систем, що вимагають розподілу переривань по ядрам.
  • Різке зростання числа підключених пристроїв, що перевищує кількість вільних IRQ процесора.
  • Швидкість передавання даних пристроїв, що перевищує швидкість роботи PIC.

Розширений контролер переривань вперше почав застосовуватися на двопроцесорних системних платах, через складнішу обробку переривань від різних пристроїв (не зовсім очевидно, який із процесорів повинен реагувати на переривання). Потім розширений контролер переривань почав використовуватися і на однопроцесорних системах — пристроям стає доступно більше число переривань (24 замість 16), кілька плат розширення можуть розділяти між собою загальне переривання.

x2APIC ред.

У листопаді 2008 року у рамках мікроархітектури Nehalem фірма Intel представила нову модель контролера переривань x2APIC.[1] Серед основних покращень — збільшення кількості підтримуваних мікропроцесорів, а також збільшена швидкодія інтерфейсу.

Див. також ред.

Джерела ред.

  1. Intel Nehalem mit X2APIC - Extended xAPIC Architecture. Intel Developer Forum, presentation slides.

Посилання ред.