Interruption
- Publié dans Informatique
- Lu 371 fois
- Soyez le premier à commenter!
- Imprimer
Une interruption est un signal, généralement asynchrone au programme en cours, pouvant être émis par tout dispositif externe au microprocesseur. Le microprocesseur possède une ou plusieurs entrées réservées à cet effet. Sous réserve de certaines conditions, elle peut interrompre le travail courant du microprocesseur pour forcer l’exécution d’un programme traitant la cause de l’interruption.
Dans un échange de données par interruption, le microprocesseur exécute donc son programme principal jusqu’à ce qu’il reçoive un signal sur sa ligne de requête d’interruption. Il se charge alors d’effectuer le transfert de données entre l’interface et la mémoire. Principe de fonctionnement d’une interruption :
Avant chaque exécution d’instructions, le microprocesseur examine si il y a eu une requête sur sa ligne d’interruption. Si c’est le cas, il interrompt toutes ces activités et sauvegarde l’état présent
(registres, PC, accumulateurs, registre d’état) dans un registre particulier appelé pile. Les données y sont ‘’entassées’’ comme on empile des livres (la première donnée sauvegardée sera donc la dernière à être restituée). Ensuite, il exécute le programme d’interruption puis restitue l’état sauvegardé avant de reprendre le programme principale. Remarques :
Certaine source d’interruption possède leur propre autorisation de fonctionnement sous la forme d’un bit à positionner, on l’appelle le masque d’interruption. On peut donc interdire ou autoriser certaines sources d’interruptions, on les appelle les interruptions masquables.
Chaque source d’interruption possède un vecteur d’interruption où est sauvegardé l’adresse de départ du programme à exécuter.
Les interruptions sont classées par ordre de priorité. Dans le cas où plusieurs interruptions se présentent en même temps, le microprocesseur traite d’abord celle avec la priorité la plus élevée.