Post on 02-Jun-2018
8/10/2019 Processus Et Ordonnancement
1/15
PROCESSUS ETORDONNANCEMENT
Atelier Systmes dexploitation2010/2011
8/10/2019 Processus Et Ordonnancement
2/15
Dfinition
Un processus est un programme en cours dexcution. Cest--dire,un programme ltat actif. Un processus regroupe un programme excutable
sa zone de donnes
son compteur ordinal (o est-ce que lon en ai dans la suite dinstruction duprogramme ?)
ainsi que toutes autres informations ncessaire lexcution du programme (piledexcution, fichiers ouverts, etc.)
Un seul processus est excut la fois sur un processeur (donc si
2 processeurs, 2 processus en mme temps). Comme le processeur commute entre les diffrents processus, on
a une impression de paralllisme. Le compteur ordinal permet degarder en mmoire la prochaine instruction excuter.
2 processus peuvent tre associs au mme programme
8/10/2019 Processus Et Ordonnancement
3/15
Exemple pratique (Fabrication dun
plat de haricots)
8/10/2019 Processus Et Ordonnancement
4/15
Scenarii possibles de l'excution du
processus
Pour son execution, un processsus necessite, en eet de
consommer ou de produire des ressources.
Pour son excution, un processus ncessite, en effet deconsommer ou de produire des ressources.
8/10/2019 Processus Et Ordonnancement
5/15
Etats d'un processus
Un processus a un tat qui volue au cours du temps.
8/10/2019 Processus Et Ordonnancement
6/15
Cycle de vie dun processus
Chaque processus peut se trouver dans un destatssuivants :
Nouveau; le processus est en cours de cration
En excution; le processus est en cours dexcution sur le processeur
Prt; le processus attend dtre slectionn
En attente (ou bloqu) ; le processus attend quun vnement extrieurse produise
Termin; le processus a fini son excution
8/10/2019 Processus Et Ordonnancement
7/15
Ordonnancement, Pourquoi?
Le processeur est considr comme la ressource la plus
importante dans une machine, donc il convient de bien grer ce
dernier afin de le rendre plus productif.
Pour atteindre cet objectif, les concepteurs des systmesdexploitation dlguent lallocation du processeur un module
du systme d'exploitation en l'occurrence le Dispatcheur.
Ce Dispatcheur est excut chaque fois que le processus en
cours dexcution se bloque ou se termine, outre ces deuxsituations il peut tre galement excut en cas de rquisition
du processeur si lordonnancement prend en considration cette
proprit.
8/10/2019 Processus Et Ordonnancement
8/15
Ordonnanceur
Cette ordonnanceur comporte ; une file dattente des processus
table des processus contenant des informations sur leur tat(compteur ordinal, registres UC utiliss, priorit du processus,
information sur la mmoire et les E/S utilise Le rle majeur de lordonnancement est de maximiser
lutilisation des ressources. Un bon algorithmedordonnancement doit tre capable de : assurer que chaque processus reoit sa part du temps processeur
utiliser le temps processeur 100% (au maximum) minimiser le temps de rponse des processus interactifs
maximiser le nombre de travaux effectus dans un intervalle detemps.
8/10/2019 Processus Et Ordonnancement
9/15
L'ordonnancement
Liste destches prtes
Liste des
tches en
attente
Tche
courante
Contexte T1
tat = PRET
Contexte T2
tat = PRET
Contexte T3
tat = PRET
Code T1 Code T2 Code T3
T4
tat = Attente
T6
tat=Courant
T5
tat= Attente
8/10/2019 Processus Et Ordonnancement
10/15
Ordonnanceur
Pour sassurer quun processus ne prendra pas tout le tempsCPU, chaque ordinateur dispose dune horloge qui gnre desinterruptions. A chaque interruption de lhorloge le noyaureprend la main et dcide si le processus doit continuer ou
donner la main (ordonnancement avec rquisition oupremptive)
Elle soppose la stratgie qui consiste laisser finir la tche
Lordonnancement avec rquisition pose le problme delactualisation des donnes. Supposons un processus P1 en train
de mettre jour des donnes. Ce processus est interrompu encours de tche. Le processus p2 est lu. Ce dernier va lire lesdonnes prcdentes qui sont cependant dans un tat instable.Des mcanismes de synchronisation sont alors ncessaires.
8/10/2019 Processus Et Ordonnancement
11/15
Plusieurs processus sont prts tre excuts
Le SE doit faire un choix (algorithme d ordonnancement) :
Ordonnancement sans rquisition: un processus est excut jusqu la fin
Ordonnancement avec rquisition :
quit : chaque processus doit avoir du temps processeur
efficacit : le processeur doit tre utilis 100%
temps de rponse : l utilisateur devant sa machine ne doit pas trop attendre
temps dexcution : une squence dinstructions ne doit pas trop durer
rendement : il faut faire le plus de choses en une heure
inefficace et dangereux (ex: excution dune boucle sans fin)
chaque signal d horloge, le SE reprend la main, dcide si le processus courant a
consomm son quota de temps machine et alloue ventuellement le processeur un
autre processus
il existe de nombreux algorithmes dordonnancement avec rquisition
Ordonnancement des processus
8/10/2019 Processus Et Ordonnancement
12/15
Moralit
Ce quil faut retenir : Un processus au plus par processeur en mme temps
Chaque processus est cr, excut puis meurt
Un ordonnanceur permet de faire excuter plusieurs
processus en mme temps (point du vue humain) Un programme processus
Parfois, cela sature (beaucoup de gros processus)il faut donc attendre que lordonnanceur redonne la
main au processus dsir Exprience : sous Windows XP, taper ctrl-alt-
suppr afin dafficher lordonnanceur, lesperformances, etc
8/10/2019 Processus Et Ordonnancement
13/15
Exemple sous Windows (1)
8/10/2019 Processus Et Ordonnancement
14/15
Exemple sous Windows (2)
8/10/2019 Processus Et Ordonnancement
15/15
Exemple sous Windows (3)