Information Technology Reference
In-Depth Information
16.3
Chronogramme d'exécutions
La solution est donnée par la figure 16.6.
4
3
1
Élu
Prêt
Bloqué
P1
2
2
t
0
5
10
15
20
2
1
2
Élu
Prêt
Bloqué
4
3
P2
2
t
0
5
10
15
20
1
6
Élu
Prêt
Bloqué
10
3
P3
t
0
5
10
15
20
Figure 16.6
Chronogramme d'exécutions.
16.4
Ordonnancement sous Unix
À l'instant 0, le processus A est élu. Chaque seconde, l'interruption horloge survient
et le compteur « utilisation du processeur » est incrémenté d'une unité.
Au bout de 60 interruptions (instant t
1), la priorité des processus est recalculée.
Du fait que les processus B et C ne se sont pas encore exécutés leur priorité est
inchangée (compteur « utilisation du processeur » est nul pour ces processus). La
priorité du processus A par contre baisse et devient égale à 75 (60
=
+
30/2). C'est
donc le processus B qui est à présent élu.
À l'instant 2, de nouveau les priorités sont recalculées. Le compteur « utilisation
du processeur » du processus C étant toujours nul, la priorité de ce processus n'est
pas modifiée. Les priorités du processus A et B par contre évoluent et deviennent
respectivement égales à 67 pour le processus A (60
15/2) et à 75 pour le processus B.
On voit à présent que le processus A a une priorité qui remonte du fait qu'il n'a pas
pu utiliser l'unité centrale. Le processus C est élu.
À l'instant 3, les priorités deviennent pour le processus A égal à 63 (60
+
7/2), pour
le processus B égal à 67 et le processus C égale à 75. Le processus A est donc élu.
À l'instant 4, les priorités deviennent pour le processus A égal à 75 (60
+
31/2), pour
le processus B égal à 63 et le processus C égale à 67. Le processus B est donc élu.
+
Search WWH ::




Custom Search