IRQ
È l'acronimo di "Interrupt Request."
Un IRQ è un segnale hardware inviato alla CPU di un computer per dirle di interrompere ciò che sta facendo ed eseguire invece un processo con priorità più alta. I dispositivi hardware, come le schede di rete, i controller di archiviazione e le tastiere, inviano IRQ quando devono avvisare la CPU di avere nuove informazioni da elaborare. Per esempio, la tastiera di un computer invia un IRQ ogni volta che l'utente preme un tasto, per fare in modo che la CPU elabori immediatamente quella pressione del tasto.
A ogni componente che può inviare un IRQ viene assegnato un indirizzo IRQ dal sistema operativo. I primi PC potevano supportare soltanto un totale di 16 indirizzi IRQ, quindi alcuni componenti dovevano condividere un indirizzo. La condivisione di un indirizzo causava spesso conflitti e arresti anomali quando due dispositivi provavano a inviare un IRQ contemporaneamente. Per esempio, in genere un computer assegnava l'indirizzo IRQ 7 sia alla propria scheda audio sia alla propria porta parallela; se entrambi i dispositivi inviavano contemporaneamente un IRQ, il sistema si bloccava. I computer moderni supportano centinaia di canali IRQ, quindi oggi i conflitti IRQ sono estremamente rari.
Tutti gli IRQ passano attraverso un controller di interrupt dedicato, che riceve gli interrupt in entrata, assegna loro una priorità e li inoltra alla CPU. Nei computer moderni, le CPU utilizzano più core del processore, ognuno dei quali ha il proprio controller di interrupt (chiamato Advanced Programmable Interrupt Controller (APIC)). Il chipset della scheda madre include un controller complementare chiamato controller APIC di (I/O) che riceve le richieste di interrupt in entrata dagli altri dispositivi hardware e le distribuisce tra i vari core per l'elaborazione.
Metti alla prova le tue conoscenze