Que sont les interruptions système ?
Bien que certains ordinateurs, comme celui qui fait fonctionner votre four grille-pain, effectuent une seule tâche à la fois, les PC de bureau, smartphones et mainframes ont plusieurs processus qui fonctionnent simultanément. L'ordinateur gère cela grâce aux interruptions système, un mécanisme par lequel un programme obtient temporairement la priorité sur les autres. L'unité centrale (CPU) autorise divers types d'interruptions basés sur une hiérarchie de tâches prédéterminée.
Programmes multiples
Un PC, smartphone ou serveur moderne maintient plusieurs programmes en mémoire, bien que le CPU n'en exécute qu'une poignée à un moment donné ; la plupart sont inactifs. Les programmes incluent des applications comme votre traitement de texte, tableur et email, des fonctions utilitaires comme les moniteurs de mémoire et les files d'attente d'impression, et les programmes qui gèrent la carte réseau, le clavier et les haut-parleurs. Quand un programme important a besoin de service, il émet une interruption au CPU, qui arrête les autres travaux en cours pour s'occuper de la tâche pressante. Le CPU ne traite l'interruption que si elle a la priorité sur les autres tâches.
Interruptions matérielles
Les disques durs, cartes réseau, imprimantes et autres périphériques émettent des interruptions matérielles pour attirer l'attention du CPU. Par exemple, un programme demande des données au disque dur ; bien que cette tâche prenne environ 10 millisecondes, c'est long pour le CPU qui effectue d'autres travaux pendant ce temps. Quand le disque dur trouve les données, il émet une interruption matérielle, disant au CPU d'arrêter temporairement ce qu'il fait et de livrer les données au programme demandeur.
Interruptions logicielles
Les programmes émettent des interruptions logicielles pour gérer des requêtes spéciales via le système d'exploitation. Par exemple, dans votre traitement de texte, vous voulez coller la date dans un en-tête de page. Le traitement de texte émet une interruption logicielle, demandant la date à Microsoft Windows. Il attend brièvement que Windows récupère la date du calendrier système. Quand la date est prête, Windows rend le contrôle au traitement de texte. Les interruptions logicielles ont une priorité relativement basse. Si, pendant la récupération de la date, le CPU reçoit une requête du disque dur, il traite d'abord l'interruption du disque dur, puis termine la récupération de la date.
Trappes du CPU
Le système d'exploitation réserve plusieurs interruptions de très haute priorité pour les urgences. Par exemple, les données d'un programme deviennent corrompues, provoquant son plantage. Le système d'exploitation émet une trappe CPU qui arrête le programme et affiche un message d'avertissement à l'écran, vous informant de ce qui s'est passé. Dans les cas plus extrêmes, le système d'exploitation lui-même développe un problème grave. Il émet une autre trappe CPU qui affiche un message de diagnostic et arrête tout traitement.
