IRQ
Steht für „Interrupt Request“.
Ein IRQ ist ein Hardwaresignal, das an die CPU eines Computers gesendet wird und ihr mitteilt, ihre aktuelle Aufgabe zu unterbrechen und stattdessen einen Prozess mit höherer Priorität auszuführen. Hardware-Geräte wie Netzwerkkarten, Speichercontroller und Tastaturen senden IRQs, wenn sie die CPU darüber informieren müssen, dass neue Informationen zur Verarbeitung vorliegen. Die Tastatur eines Computers sendet beispielsweise jedes Mal einen IRQ, wenn der Benutzer eine Taste drückt, damit die CPU diesen Tastendruck sofort verarbeitet.
Jeder Komponente, die einen IRQ senden kann, wird vom Betriebssystem eine IRQ-Adresse zugewiesen. Frühe PCs konnten insgesamt nur 16 IRQ-Adressen unterstützen, weshalb sich einige Komponenten eine Adresse teilen mussten. Das Teilen einer Adresse führte häufig zu Konflikten und Abstürzen, wenn zwei Geräte gleichzeitig versuchten, einen IRQ zu senden. Beispielsweise wies ein Computer typischerweise sowohl seiner Soundkarte als auch seinem Druckeranschluss die IRQ-Adresse 7 zu; wenn beide Geräte gleichzeitig einen IRQ sendeten, fror das System ein. Moderne Computer unterstützen Hunderte von IRQ-Kanälen, daher sind IRQ-Konflikte heute äußerst selten.
Alle IRQs laufen über einen dedizierten Interruptcontroller, der eingehende Interrupts empfängt, sie priorisiert und an die CPU weiterleitet. In modernen Computern verwenden CPUs mehrere Prozessorkerne, die jeweils über einen eigenen Interruptcontroller verfügen (den sogenannten Advanced Programmable Interrupt Controller (APIC)). Der Chipsatz des Motherboards umfasst einen zugehörigen Controller den sogenannten (I/O-APIC), der eingehende Interruptanforderungen von anderen Hardwaregeräten empfängt und zur Verarbeitung auf die mehreren Kerne verteilt.
Testen Sie Ihr Wissen