Interruption

Une interruption est un signal provenant d'un périphérique relié à un ordinateur ou d'un programme à l'intérieur de l'ordinateur qui demande au système d'exploitation de s'arrêter et de déterminer ce qu'il faut faire ensuite. Presque tous les ordinateurs personnels (ou plus grands) d'aujourd'hui sont commandés par des interruptions - c'est-à-dire qu'ils commencent à exécuter la liste des instructions informatiques dans un programme (peut-être une application telle qu'un traitement de texte) et continuent à exécuter les instructions jusqu'à ce que (A) ils ne puissent plus aller plus loin ou (B) un signal d'interruption soit détecté. L'ordinateur peut soit continuer à exécuter le programme en cours, soit en lancer un autre après la détection du signal d'interruption.

Un ordinateur est capable d'exécuter une seule instruction par ordinateur. Il peut toutefois être interrompu et prendre en charge différents programmes ou jeux d'instructions. C'est ce qu'on appelle le multitâche. Cela permet aux utilisateurs d'effectuer plusieurs tâches à la fois. L'ordinateur gère simplement à tour de rôle les programmes que l'utilisateur lance. L'ordinateur travaille à une vitesse qui donne l'impression que toute la tâche de l'utilisateur est effectuée simultanément. Les systèmes d'exploitation de l'ordinateur sont efficaces pour permettre aux utilisateurs de penser à d'autres programmes pendant que le système fonctionne. Un système d'exploitation comporte généralement un code appelé "gestionnaire d'interruptions". Le gestionnaire d'interruptions donne la priorité aux interruptions et les enregistre dans une file d'attente si plusieurs d'entre elles attendent d'être traitées. Le système d'exploitation dispose d'un autre petit programme, parfois appelé planificateur, qui détermine à quel programme donner le contrôle ensuite. En général, il existe des interruptions matérielles et des interruptions logicielles. Une interruption matérielle se produit, par exemple, lorsqu'une opération d'E/S est terminée, comme la lecture de données dans l'ordinateur à partir d'un lecteur de bande. Les interruptions logicielles se produisent lorsqu'un programme d'application cesse de répondre aux demandes de services ou se termine. Une demande d'interruption matérielle (IRQ), sur un ordinateur personnel, a une valeur qui l'associe à un périphérique spécifique.