Architettura APIC della Intel
# Architettura APIC della Intel

L'architettura APIC (Advanced Programmable Interrupt Controller) è un sistema di controllori avanzati di interruzioni programmabili progettato dalla Intel per essere utilizzato in sistemi di elaborazione che prevedono sistemi multiprocessore simmetrici.

## Funzionamento

L'architettura APIC consta di due componenti: il Local APIC (LAPIC) e l'I/O APIC. Il LAPIC è integrato in ogni CPU di sistema mentre l'I/O APIC risiede nei vari bus periferici, trovando, di solito, un I/O APIC per ognuno di essi.

Nei sistemi che contengono i PIC (Programmable Interrupt Controller) Intel 8259, quest'ultimo può essere connesso o al LAPIC del processore di bootstrap di sistema (BSP) o a uno degli I/O APIC di sistema o ad entrambi, anche se, da un punto di vista logico, l'8259 presenta, in un dato istante, una sola connessione.

### Local APIC

I LAPIC gestiscono tutte le interruzioni esterne per conto del processore di cui fanno parte. Inoltre, sono in grado di accettare e generare IPI, Interruzioni Inter-Processor, tra LAPIC. I LAPIC prevedono fino a 224 vettori di IRQ utili provenienti dagli I/O APIC. In realtà i vettori vanno da 0 a 255 ma i numeri da 0 a 31 sono riservati per la gestione delle eccezioni dei processori x86.

### I/O APIC

Gli I/O APIC contengono una tabella di ridirezione, utilizzata per instradare le interruzioni che essi ricevono dai bus periferici verso uno o più Local APIC.

## Ulteriori approfondimenti

* Intel 8259
* Controllore di interruzioni programmabile
* Controllore avanzato di interruzioni programmabile
* Interruzioni
* Gestore di interrupt
* Interrupt request
* Latenza dell'interruzione
* Interruzioni non mascherabili
* PIC (microcontrollore)
