Académique Documents
Professionnel Documents
Culture Documents
A.U 2022-2023
Plan du cours
2
Objectifs
Ordonnanceurs préemptifs
4
Rappel sur les processus
Un processus est
un programme en
exécution
5
5
Rappel sur les processus
o Processus et temps partagé
6
6
Rappel sur les processus
o Motivation
• S’il n’y a qu’ un seul processeur, un choix doit être fait quant au prochain processus
à exécuter
CPU
88
9
Ordonnancement des processus
o Présentation
1010
Ordonnancement des processus
11
11
Ordonnancement des processus
o Quand ordonnancer ?
12
12
Critères d’Ordonnancement
13
13
Ordonnancement des processus
o Interruption et ordonnancement
• On utilise les interruptions d’horloge pour commuter les tâches dans les systèmes
multitâches.
14
14
Ordonnancement des processus
o Mode d’ordonnancement
15
15
Ordonnanceurs non préemptifs
- Même s’il s’exécute pendant des heures, il ne sera pas suspendu de force
16
16
Ordonnanceurs non préemptifs
• Appelé aussi FIFO (first in first out) ou premier arrivé premier servi.
• Cet algorithme traite les processus selon l’ordre de leur soumission (arrivée)
- -> sans prendre compte de leur temps d’exécution
• L’organisation de la file d’attente des processus prêts est tout simplement FIFO.
17
17
Ordonnanceurs non préemptifs
o Exemple (FCFS )
• Considérons les processus P1, P2, P3 avec les temps d’exécutions suivants.
0 24 27 30
18
18
Ordonnanceurs non préemptifs
o Exemple (FCFS )
• Supposons que les processus arrivent dans l’ordre P2, P3, P1, on aura la diagramme
de Gantt suivant :
P2 P3 P1
0 3 6 30
• Le temps d’attente moyen devient (0+3+6)/3 = 3ms
19
19
Ordonnanceurs non préemptifs
o L’algorithme FCFS
• Chaque processus élu est le premier arrivé à la liste et il sera exécuté jusqu’à
la fin.
20
20
Ordonnanceurs non préemptifs
• SJF, ou la plus courte durée d’exécution, choisit les processus ayant le plus court
temps d’exécution.
21
21
Ordonnanceurs non préemptifs
P5 P4 P1 P3 P2
22
22
Application 1
23
23
Application 1
Solution
24
24
Application 1
Solution
25
25
Application 1
Solution
26
26
Application 1
Solution
27
27
Ordonnanceurs non préemptifs
o Algorithme SJF
• L'Ordonnanceur SJF élit le processus dont le temps d’exécution est le plus court
sachant que ce processus se trouve en tête de la file d’attente.
SJF est optimal: il obtient le temps moyen Risque de privation des tâches les
d’attente minimal pour un ensemble de plus longues
processus donné.
28
28
Ordonnanceurs préemptifs
29
29
Ordonnanceurs préemptifs
30
30
Ordonnanceurs préemptifs
o Commutation de contexte
31
31
Ordonnanceurs préemptifs
• Si un processus dont le temps d’exécution est plus court que le reste du temps
d’exécution du processus en cours de traitement, alors il prendra sa place.
32
32
Ordonnanceurs préemptifs
o Exemple SRT
P1 0 7
P2 2 4
P3 4 1
P4 5 4
Ordre d’exécution:
0 2 4 5 7 11 16
P1 P2 P3 P2 P4 P1
33
33
Application 2
• Lorsque un processus est élu on lui attribue une tanche de temps fixe appelé
quantum: c’est le temps d’allocation du processeur au processus
• On lui retire donc le processeur et on le réinsère dans la file des processus prêt.
36
35
Ordonnanceurs préemptifs
o Exemple RR
Quantum q=4 ms
P1 P2 P3 P1 P1 P1 P1 P1
0 4 7 10 14 18 22 26 30
37
36
Application 3
38
Application 4
Etant donné cinq processus décrits au niveau du tableau suivant par leurs temps
d’arrivée ainsi que leurs temps d’exécution:
40
Ordonnanceurs préemptifs
43
39
Ordonnanceurs préemptifs
o Algorithme Tourniquet ou Round Robin
44
40
Ordonnancement avec priorité
Les processus de même priorité sont regroupés dans une file du type FIFO.
41
45
Ordonnancement avec priorité
o Exemple
• Pour cet exemple, Un nombre de priorité élevé correspond à une priorité plus
importante.
Ordre d’exécution:
P4 P3 P1 P5 P2
46
42
Ordonnancement avec priorité
47
43
Application 5
48
44
Récapitulons
49