L’interruption est un signal émis par le matériel ou le logiciel lorsqu’un processus ou un événement nécessite une attention immédiate. Il alerte le processeur d’un processus hautement prioritaire nécessitant une interruption du processus de travail en cours. Dans les périphériques d’E/S, l’une des lignes de contrôle du bus est dédiée à cet effet et s’appelle la routine de service d’interruption (ISR).
Lorsqu’un périphérique déclenche une interruption au processus i, disons, le processeur termine d’abord l’exécution de l’instruction i. Ensuite, il charge le Compteur de programmes (PC) avec l’adresse de la première instruction de l’ISR. Avant de charger le compteur de programme avec l’adresse, l’adresse de l’instruction interrompue est déplacée vers un emplacement temporaire. Par conséquent, après avoir manipulé l’interruption, le processeur peut continuer avec le processus i + 1.
Pendant que le processeur gère les interruptions, il doit informer le dispositif que sa demande a été reconnue pour qu’il cesse d’envoyer le signal de demande d’interruption. De plus, l’enregistrement des registres afin que le processus interrompu puisse être restauré à l’avenir augmente le délai entre le moment où une interruption est reçue et le début de l’exécution de l’ISR. C’est ce qu’on appelle la latence d’interruption.
Interruptions matérielles :
Dans une interruption matérielle, tous les périphériques sont connectés à la ligne de demande d’interruption. Une seule ligne de requête est utilisée pour tous les n périphériques. Pour demander une interruption, un périphérique ferme son commutateur associé. Lorsqu’un périphérique demande une interruption, la valeur de INTR est la OU logique des demandes des périphériques individuels.
Séquence d’événements impliqués dans la gestion d’un IRQ :
- Les périphériques déclenchent un IRQ.
- Le processeur interrompt le programme en cours d’exécution.
- L’appareil est informé que sa requête a été reconnue et l’appareil désactive le signal de requête.
- L’action demandée est effectuée.
- L’interruption est activée et le programme interrompu est repris.
Gestion de plusieurs périphériques :
Lorsque plus d’un périphérique déclenche un signal de demande d’interruption, des informations supplémentaires sont nécessaires pour décider quel périphérique doit être considéré en premier. Les méthodes suivantes sont utilisées pour décider quel périphérique sélectionner : Interrogation, Interruptions vectorielles et Imbrication d’interruptions. Ceux-ci sont expliqués comme suit ci-dessous.
- Interrogation :
Dans l’interrogation, le premier périphérique rencontré avec le jeu de bits IRQ est le périphérique à desservir en premier. L’ISR approprié est appelé à servir le même. Il est facile à mettre en œuvre mais beaucoup de temps est perdu en interrogeant le bit IRQ de tous les appareils. - Interruptions vectorisées:
Dans les interruptions vectorisées, un périphérique demandant une interruption s’identifie directement en envoyant un code spécial au processeur via le bus. Cela permet au processeur d’identifier le périphérique qui a généré l’interruption. Le code spécial peut être l’adresse de départ de l’ISR ou l’endroit où l’ISR se trouve en mémoire, et s’appelle le vecteur d’interruption. - Imbrication d’interruptions:
Dans cette méthode, le périphérique d’E/S est organisé dans une structure de priorité. Par conséquent, la demande d’interruption d’un périphérique de priorité supérieure est reconnue là où la demande d’un périphérique de priorité inférieure ne l’est pas. Pour implémenter cela, chaque processus / périphérique (même le processeur). Le processeur accepte uniquement les interruptions provenant de périphériques / processus ayant une priorité supérieure à celle-ci.
La priorité des processeurs est codée en quelques bits de PS (Process Status register). Il peut être modifié par des instructions de programme qui écrivent dans le PS. Le processeur est en mode supervisé uniquement lors de l’exécution des routines du système d’exploitation. Il passe en mode utilisateur avant d’exécuter des programmes d’application.
Lecteur d’attention! N’arrête pas d’apprendre maintenant. Mettez la main sur tous les concepts importants de la Théorie CS pour les entretiens SDE avec le cours de théorie CS à un prix favorable aux étudiants et devenez prêt pour l’industrie.