Information Technology Reference
In-Depth Information
- un registre de commande qui reçoit le type d'opération à effectuer (lecture ou
écriture);
- une zone tampon permettant le stockage de données;
- un composant actif, de type processeur, qui exécute un transfert sans utilisation du
processeur central.
Le programme pilote est alors très simple et effectue simplement les opérations
d'initialisation du DMA : chargement des registres puis lancement du processeur
périphérique. À partir de ce moment le transfert s'effectue sans utilisation du proces-
seur central qui est alors libre d'effectuer un autre travail. À la fin du transfert une
interruption est émise qui interrompt le programme en cours d'exécution au profit du
programme de gestion de l'interruption.
La figure 9.26 résume une opération d'entrées-sorties gérée à l'aide d'un DMA
associé au mécanisme d'interruption :
- le programme d'écriture sur disque est compilé et chargé en mémoire. Les ordres
d'entrées-sorties sont traduits en langage machine sous la forme d'un appel au
système d'exploitation (le pilote) (phases 0 et 1);
- le programme s'exécute et déclenche l'appel au système pour réaliser l'opération
d'entrées-sorties. L'exécution du SVC est un appel au pilote et produit la sauve-
garde du contexte matériel d'exécution du programme utilisateur (phases 2 et 3);
- le pilote s'exécute en plaçant tout ou partie des informations à transférer dans une
zone mémoire réservée au DMA (phase 4). Il faut en effet penser que le proces-
(10)
(3)
(11)
(2)
(4)
(1)
SVC
Écrire
(0)
(5)
(7)
(9)
(6)
(8)
Figure 9.26
Opération d'entrées-sorties gérée par DMA.
 
Search WWH ::




Custom Search