Information Technology Reference
In-Depth Information
- la prise en compte d'une interruption par le matériel et le système d'exploitation.
Le programme utilisateur est alors stoppé et l'exécution de la routine d'interrup-
tion associée à l'interruption survenue est exécutée en mode superviseur.
Trappes et appels systèmes sont parfois qualifiés d'interruptions logicielles pour
les opposer aux interruptions matérielles levées par les périphériques du processeur.
11.4.2 Gestion des interruptions matérielles et logicielles
Prise en compte d'une interruption matérielle
Comme il a été décrit au chapitre 7, une interruption est un signal permettant à un
dispositif externe au processeur (un périphérique d'entrées-sorties notamment) d'inter-
rompre le travail courant du processeur pour aller réaliser un traitement particulier
lié à la cause de l'interruption, appelé procédure, programme ou traitant d'interrup-
tion. Si le niveau d'exécution du processeur est plus bas que celui de l'interruption,
le processeur accepte l'interruption avant de décoder l'instruction machine suivante
et relève son niveau d'exécution afin qu'aucune autre interruption de niveau infé-
rieure ou égale ne puisse l'interrompre.
Les traitants d'interruptions sont des routines exécutées en mode superviseur, char-
gées en mémoire centrale au moment du chargement du système d'exploitation et dont
les adresses en mémoire centrale sont contenues dans une table également placée en
mémoire centrale, la table des vecteurs d'interruptions.
Lors de la survenue d'une interruption - par exemple l'interruption numéro 3 tel
que le montre la figure 11.9 - le programme utilisateur en cours d'exécution est
Table des vecteurs
d'interruptions
It 3
0017
0017
Sous-traitant It3
CO
1002
Programme
Mode utilisateur
Mode superviseur
Programme
1002
Interruption
n˚ 3
Sous-traitant d'IT n˚ 3
Co <- 0017
PSW <- Superviseur
0017
1002
Traitement IT
RTI
Co <- 1002
PSW <- Utilisateur
Figure 11.9
Prise en compte d'une interruption.
 
 
 
Search WWH ::




Custom Search