Please enable JavaScript.
Coggle requires JavaScript to display documents.
Ordonnancement des processus - Coggle Diagram
Ordonnancement des processus
Qu'est ce qu'un ordonnanceur ?
Dans les systèmes d'exploitation, l’ordonnanceur est le composant du noyau du système d'exploitation choisissant l'ordre d'exécution des processus sur les processeurs d'un ordinateur. Un ordonnancement constitue une solution au problème d'ordonnancement. Il est défini par le planning d'exécution des taches ("ordre" et "calendrier) et d'allocation des ressources et vise à satisfaire un ou plusieurs objectifs.
Qu'est ce que l'ordonnancement au sens SE ?
En informatique, l'ordonnancement est le fait d'ordonner des tâches à exécuter selon certaines contraintes. Les contraintes peuvent être temporelles ou dimensionnelles. Dans les systèmes d'exploitation, l’ordonnanceur désigne le composant du noyau du système d'exploitation choisissant l'ordre d'exécution des processus sur les processeurs d'un ordinateur.
le rôle de l'ordonnanceur :
Un des rôles du système d'exploitation, et plus précisément de l'ordonnanceur du noyau, est de permettre à tous ces processus de s'exécuter à un moment ou un autre et d'utiliser au mieux le processeur pour l'utilisateur. Pour que chaque tâche s'exécute sans se préoccuper des autres et/ou aussi pour exécuter les tâches selon les contraintes imposées au système (exemple: contraintes temporelles dans le cas d'un système d'exploitation temps réel) , l'ordonnanceur du noyau du système effectue des commutations de contexte de celui-ci.
4- LES STRATEGIES D'ORDONNANCEMENT UTILISEES PAR SE :
On trouve au moins trois grandes familles de stratégies d'ordonnancement, applicables à des tâches qui soient préemptives ou non. Ces stratégies visent à déterminer un ordonnancement permettant à toutes les tâches d'un ensemble donné de respecter leurs contraintes, ce qui revient typiquement à déterminer les priorités de chacune des tâches de manière telle qu'un ordonnanceur général et inéquitable opérant avec ces tâches mène à un STR correct, donc dont les tâches s'exécutent correctement et à temps.
ordonnanceurs préemptifs
En informatique, l'ordonnanceur préemptif désigne la capacité d'un système d'exploitation à exécuter ou arrêter une tâche planifiée en cours.
Un ordonnanceur préemptif présente l'avantage d'une meilleure réactivité du système et de son évolution, mais l'inconvénient vient des situations de compétition (lorsque le processus d'exécution accède à la même ressource avant qu'un autre processus (préempté) ait terminé son utilisation).
PRINCIPE DE FONCTIONNEMENT
L'ordonnanceur distribue le temps du processeur entre les différents processus. Dans un système préemptif, à l'inverse d'un système collaboratif, l'ordonnanceur peut interrompre à tout moment un processus en cours d'exécution pour permettre à un autre de s'exécuter.
Dans un schéma d’ordonnanceur préemptif, ou avec réquisition, pour
s’assurer qu’aucun processus ne s’exécute pendant trop de temps, les ordinateurs ont une horloge électronique qui génère périodiquement une interruption
Le processeur passe donc d’un processus à un autre en exécutant chaque
processus pendant quelques dizaines ou centaines de millisecondes. Le
temps d’allocation du processeur au processus est appelé quantum. Cette
commutation entre processus doit être rapide, c’est-à-dire, exiger un temps
nettement inférieur au quantum.
Le processeur, à un instant donné, n’exécute réellement qu’un seul processus, mais pendant une seconde, le processeur peut exécuter plusieurs
processus et donne ainsi l’impression de parallélisme (pseudo-parallélisme).
ordonnanceurs non préemptifs
Dans un système à ordonnancement non préemtif ou sans réquisition,
le système d’exploitation choisit le prochain processus à exécuter, en général, le Premier Arrivé est le Premier Servi PAPS (ou First-Come FirstServed FCFS) ou le plus court d’abord (Short Job First SJF). Il lui alloue le
processeur jusqu’à ce qu’il se termine ou qu’il se bloque (en attente d’un
événement). Il n’y a pas de réquisition.
La différence clé entre l‘ordonnancement préemptif et non préemptif réside dans le nom même. Un ordonnancement préemptif peut être préempté; les processus peuvent être planifiés. Dans l’ordonnancement non préemptive, les processus ne peuvent pas être planifiés.