Académique Documents
Professionnel Documents
Culture Documents
ORDONNANCEMENT DES
PROCESSUS
1
Plan
o Introduction
o Objectifs de l'ordonnanceur.
o Ordonnanceurs non préemptifs
o SJF
o FCFS
o Priorité.
o Ordonnanceurs préemptifs
o Round Robin.
o SRTF
2
Introduction
O plusieurs processus peuvent être présents en mémoire centrale en attente
d'exécution.
5
Ordonnanceurs non préemptifs : FCFS
✓ Algorithme FCFS (First Come First Served) -- Premier Arrivé Premier Servi
Q Un processuss'exécute jusqu'à saterminaison, sans retrait forcé dela ressource.
Q Modèle adapté au partage du processeur par des processus de même priorité (aucun
privilège entre les processus).
Q Facile à implanter, mais peu efficace (le choix n’est pas lié à l’utilisation de l’UC).
Q Exemple
P r o c e ssu s D u r é e e s t im ée D a t e d ’ a r r iv é e
P1 24 0
P2 8 1
P3 12 2
P4 3 3
✓ Schématiser l’exécution des processus selon leur ordre d'arrivée. Pour cela, on
utilise le DIAGRAMME DE GANTT
P1 P2 P3 P4
0 24 32 44 47 Temps de vie des processus
7
✓ Temps de traitement moyen = [(24 - 0) + (32 - 1) + (44 -2) + (47 -3)]/4 = 35,25
Ordonnanceurs non préemptifs : SJF
O Algorithme SJF -- Shortest Job First (STCF -- Shortest
Time to Completion First) : Algorithme du ’’Plus Court
d’Abord ’’ :
Q Suppose la connaissance des temps d'exécution.
Q Exécuter le processus le plus court € Minimise le
temps moyen d'exécution.
6
Ordonnanceurs non préemptifs : Priorité
8
Priority Scheduling
Exemple :
12
Temps d’attente moyen = 8,2
Ordonnanceurs préemptifs : RoundRobin
O Algorithme tourniquet -- RR : l’un des algorithmes les plus utilises et des plusfiables
O Exemple : Le quantum de temps, Q, est égale à 2 unités; quel est le temps de traitement moyen?
O Sachant que les processus P1.. P8 sont arrivés à l’instant 0 suivant l’ordre de leurs indices,
P2 P3
(4 u n i t é s ) (2 u n i t é s )
Exécution P1 Q Q P4
CPU (3 u n i t é s ) Q Q (3 u n i t é s )
Q Q
P8 P5
(2 u n i t é s ) Q Q (3 u n i t é s )
P7 P6 9
(4 u n i t é s ) (5 u n i t é s )
Ordonnanceurs préemptifs : Round Robin
P1 P2 P3 P4 P5 P6 P7 P8 P1 P2 P4 P5 P6 P7 P6
0 2 4 6 8 10 12 14 16 17 19 20 21 23 25 26
Temps de vie
D i a g r a m m e d e G a n t t (Q=2 u n i t é s )
O Exemple :
Diagramme de Gantt
P1 P2 P4 P2 P3 P1 P1
0 2 4 6 9 14 20
Temps de vie
Exemple :
Affectation d’une priorité à chaque processus (p.ex. un nombre
entier)
- souvent les petits chiffres dénotent des hautes priorités
- 0 la plus haute
L’UCT est donnée au processus prêt avec la plus haute priorité
avec ou sans préemption
- Il y a une file prêt pour chaque priorité
Algorithme avec priorité
Un proc peut être servi seulement si toutes les files de priorités plus hautes sont vides
Files multiples et à retour
- À déterminer:
nombre de files
algorithmes d’ordonnancement pour chaque file
algorithmes pour décider quand un proc doit passer
d ’une file à l`autre
algorithme pour déterminer, pour un proc qui
devient prêt, sur quelle file il doit être mis
Files multiples et à retour
PRIO = 0
la + élevée
PRIO = 1
PRIO = 2
Exemple de files multiples à retour
Trois files:
P0: tourniquet, tranche = 8 msecs
P1: tourniquet, tranche = 16 msecs
P2: FCFS
Ordonnancement:
Un nouveau processus entre dans Q0, il reçoit 8 msecs d ’UCT
S ’il ne finit pas dans les 8 msecs, il est mis dans Q1, il reçoit 16
msecs additionnels
S ’il ne finit pas encore, il est interrompu et mis dans Q2
Si plus tard il commence à avoir des cycles plus courts, il pourrait
retourner à Q0 ou Q1