Information Technology Reference
In-Depth Information
fin de cette opération d'entrées-sorties. Le processus P1 est dérouté pour aller exécuter
le traitant d'interruption correspondant; il y a commutation de contexte avec change-
ment de protection (passage en mode superviseur). Au cours du traitant d'interruption,
l'état du processus P0 est modifié et devient égal à prêt, puis une opération d'ordon-
nancement est lancée : le processus P0 est de nouveau élu. Le contexte processeur
associé au processus P1 est sauvegardé dans le PCB du processus P1 (PCB1) et le
processeur est chargé avec le PCB du processus 0 (PCB0).
Les opérations d'ordonnancement prennent place lors de tout changement d'états
des processus.
12.2.2 Entités systèmes responsable de l'ordonnancement
Les processus prêts et les processus bloqués sont gérés dans deux files d'attentes
distinctes qui chaînent leur PCB. Le module ordonnanceur ( scheduler ) trie la file des
processus prêts de telle sorte que le prochain processus à élire soit toujours en tête de
file. Le tri s'appuie sur un critère donné spécifié par la politique d'ordonnancement .
Dans un contexte multiprocesseur, le répartiteur ( dispatcher ) alloue un proces-
seur parmi les processeurs libres à la tête de file de la liste des processus prêts et
réalise donc l'opération d'élection. Dans un contexte monoprocesseur le rôle du
répartiteur est très réduit puisqu'il n'a pas à choisir le processeur à allouer : il est
alors souvent intégré dans l'ordonnanceur. La figure 12.8 représente les modules
évoqués ici.
Préemption
Cpu
Prêts
Cpu
Répartiteur
Ordonnanceur
Classement
selon une politique
d'ordonnancement
Élection
Cpu
Blocage
Déblocage
Bloqués
Figure 12.8
Ordonnanceur et répartiteur.
12.2.3 Politiques d'ordonnancement
La politique d'ordonnancement détermine quel sera le prochain processus élu. Selon
si la préemption est autorisée ou non, la politique d'ordonnancement sera de type
préemptive ou non.
 
 
Search WWH ::




Custom Search