LOG710 Hiver 2014

publicité
LOG710 Hiver 2014
Ordonnancement de CPU
Solution des Exercices
1. On suppose que les processus suivant (Table 1) arrivent pour s’exécuter aux instants indiqués dans la table. Chaque
processus va s’exécuter pour un temps égal au cycle CPU indiqué. En répondant aux questions utiliser
l’ordonnancement non préemptif.
Processus
P1
P2
P3
Instant d’arrivée
Cycle CPU
0.0
8
0.4
4
1.0
1
Table 1
a. Quel est le temps de rotation moyen pour ces processus avec un algorithme d’ordonnancement FCFS?
Diagramme de Gantt avec un ordonnancement FCFS :
P1
0
P2
8
P3
12
13
Calculons le temps de rotation moyen pour ces processus
Processus
Temps de rotation
P1
8
P2
12 – 0.4
P3
13 - 1
Total
31.6
Moyenne
10.53
b. Quel est le temps de rotation moyen pour ces processus avec un algorithme d’ordonnancement SJF?
Diagramme de Gantt avec un ordonnancement SJF
P1
0
P3
8
P2
9
13
Calculons le temps de rotation moyen pour ces processus
Processus
Temps de rotation
P1
8
P2
13 – 0.4
P3
9-1
Total
28.6
Moyenne
9.53
c. L’algorithme SJF est supposé améliorer la performance. Notez qu’on choisit d’exécuter le processus P1 à
l’instant 0 car on ne sait pas que deux processus plus courts arriveraient un peu plus tard. Calculer le temps de
1
rotation moyen si la CPU est mise oisive (idle) pour la première unité de temps et ensuite SJF est utilisé. On
rappelle que les processus P1 et P2 sont en attente durant le temps où la CPU est oisive donc cette solution
devrait augmenter leur temps d’attente. Un tel algorithme pourrait être connu sous le nom ordonnancement
sachant le future!
Diagramme de Gantt avec un ordonnancement sachant le future
idle
0
P3
P2
1
P1
2
6
14
Calculons le temps de rotation moyen pour ces processus
Processus
Temps de rotation
P1
14
P2
6 – 0.4
P3
2-1
Total
20.6
Moyenne
6.86
2. On considère l’ensemble de processus suivant (Table 2). Les processus arrivent tous à l’instant 0 et admis dans le
système dans l’ordre P1, P2, P3, P4 et P5.
Processus
P1
P2
P3
P4
P5
Cycle CPU
10
1
2
1
5
priorité
3
1
3
4
2
Table 2
a. Dessiner le diagramme de Gantt correspondants à l’ordonnancement de ces processus en utilisant
respectivement les algorithmes FCFS, SJF, ordonnancement avec priorité non préemptif (un petit nombre
signifie une plus haute priorité) et RR avec un quantum = 1?
Diagramme de Gantt pour :
FCFS
P1
P2
0
10
P3
11
P4
13
P5
14
19
SJF
P2
0
P4
1
P3
P5
2
4
P1
9
19
Ordonnancement avec priorité non préemptif
P2
0
P5
1
P1
6
P3
16
P4
18
19
2
RR avec un quantum = 1
P1
0
P2
1
P3
2
P4
3
P5
4
P1
5
P3
6
P5
7
P1
8
P5
9
P1
10
P5
11
P1
12
P5
13
P1
14
P1
15
P1
16
P1
17
P1
18
19
b. Quel est le temps de rotation de chaque processus pour chaque algorithme d’ordonnancement?
Processus
P1
P2
P3
P4
P5
FCFS
10
11
13
14
19
SJF
19
1
4
2
9
Avec Priorité
16
1
18
19
6
RR (q=1)
19
2
7
4
14
c. Quel est le temps d’attente de chaque processus pour chaque algorithme d’ordonnancement?
Processus
P1
P2
P3
P4
P5
Total
Moyenne
FCFS
0
10
11
13
14
48
9.6
SJF
9
0
2
1
4
16
3.2
Avec Priorité
6
0
16
18
1
41
8.2
RR (q=1)
9
1
5
3
9
27
5.4
d. Quel est l’algorithme qui donne un temps d’attente moyen minimum?
SJF
3
Téléchargement