Introduction aux interruptions
Les interruptions sont un aspect incontournable des systèmes à microprocesseurs. Elles permettent d’interrompre temporairement l’exécution d’un programme informatique pour traiter des événements prioritaires.
Les périphériques d’entrées/sorties les utilisent généralement pour signaler des événements asynchrones nécessitant un traitement en temps réel, telle la fin de période d’une horloge, la complétion d’une tâche. Elles servent également à économiser du temps CPU en évitant des boucles de scrutation (Polling Loop).
Des défaillances du code, des exceptions, peuvent également générer des interruptions temporaires du programme pour être traitées. Elles sont souvent dues à des dysfonctionnements inopinés du logiciel résultant de son exécution, par exemple des instructions erronées, des calculs arithmétiques incorrects ou des accès non autorisés à la mémoire.
Les systèmes d’exploitation modernes utilisent les interruptions logicielles pour réaliser les appels système. Ce type d’interruptions permet d’isoler les processus utilisateurs, des pilotes de périphériques et des fonctions du noyau.