Interruption Request (IRQ - Requête d'Interruption)
1. Définition
Une IRQ (Interruption Request) est un signal envoyé par un périphérique matériel
au processeur pour interrompre son exécution et lui demander d’exécuter une
tâche spécifique (ex. : traitement d’un périphérique d’entrée comme un clavier ou
une souris).
2. Fonctionnement d’une IRQ
1. Détection de l’événement : Un périphérique (ex. : clavier, disque dur) génère
une requête d’interruption.
2. Signal envoyé au processeur : L’IRQ est transmise au contrôleur
d’interruptions.
3. Sauvegarde de l’état du processeur : Le CPU arrête temporairement
l'exécution du programme en cours.
4. Exécution de la routine d’interruption : Le processeur exécute le programme
associé à l’interruption (ex. : lecture d’un caractère tapé au clavier).
5. Reprise du programme initial : Une fois la tâche terminée, le CPU reprend
l’exécution normale.
3. Types d’IRQ
3.1 IRQ Matérielles (Hardware IRQ)
Ces interruptions proviennent des périphériques physiques et passent par un
contrôleur d’interruptions comme le PIC (Programmable Interrupt Controller) ou
l’APIC (Advanced Programmable Interrupt Controller).
Exemples courants d’IRQ matérielles :
| IRQ | Périphérique associé |
|-----|----------------------|
| 0 | Horloge système |
| 1 | Clavier |
| 3 | Port série COM2 |
| 4 | Port série COM1 |
| 5 | Carte son |
| 6 | Lecteur de disquettes |
| 7 | Port parallèle (imprimante) |
| 8 | Horloge temps réel |
| 12 | Souris PS/2 |
| 14 | Contrôleur de disque IDE primaire |
3.2 IRQ Logicielles (Software IRQ)
Générées par un programme pour demander une interruption logicielle (ex. : une
exception système).
Exemple :
INT 21h sous DOS → Appelle des services système.
Interruptions système sous Linux → Gestion des processus et de la mémoire.
4. Gestion des IRQ
Le système d’exploitation attribue et gère les IRQ pour éviter les conflits.
4.1 PIC (Programmable Interrupt Controller)
Ancien système (8259 PIC) utilisé pour gérer jusqu’à 16 IRQ.
Peut provoquer des conflits d’IRQ si plusieurs périphériques tentent d’utiliser la
même ligne.
4.2 APIC (Advanced PIC)
Permet de gérer plus de 256 IRQ.
Utilisé dans les systèmes modernes multiprocesseurs.
5. Conflits et solutions
5.1 Problème des conflits d’IRQ
Lorsque plusieurs périphériques utilisent la même ligne d’interruption, cela peut
provoquer des erreurs.
5.2 Solutions
Plug and Play (PnP) : Attribution automatique des IRQ par le BIOS ou l’OS.
IRQ partagées : Les systèmes modernes permettent à plusieurs périphériques de
partager une même IRQ.
APIC : Remplace le PIC et permet une meilleure gestion des interruptions.
6. Applications des IRQ
Gestion des périphériques : Clavier, souris, carte réseau, disque dur.
Traitement temps réel : Systèmes embarqués, contrôleurs industriels.
Multitâche : Gestion des processus et des interruptions système.
7. Conclusion
Les IRQ sont essentielles pour la communication entre les périphériques et le
processeur. Leur gestion efficace permet d’optimiser la réactivité et la stabilité
d’un système informatique, en particulier dans les architectures modernes qui
utilisent l’APIC pour une gestion avancée des interruptions.