Académique Documents
Professionnel Documents
Culture Documents
Boulemden 1/10
.
A. Ordonnancement
L’ordonnancement constitue une fonctionnalité essentielle
de tout systè me d’exploitation temps ré el dé nommé RTOS
ci-aprè s.
Ressources
Nous savons que, d’une maniè re gé né rale, tout processus
requiert des ressources pour son exé cution. Or, dans un
systè me de contrô le temps ré el, les ressources sont
limité es et, ce qui complique davantage les choses,
plusieurs processus sont lancé s en mê me temps. C’est là le
concept de systè me multitâche.
Les ressources repré sentent tout ce qu’un processus
né cessite pour son exé cution. La mé moire, les
pé riphé riques, les fichiers programmes et donné es mais
aussi, et surtout, le processeur lui-mê me sont des cas
d’exemples de ressources. La figure 1 ci-dessous illustre
une esquisse que ce que peut ê tre une gestion multitâ che.
Dans un pareil contexte, on a besoin de dé cider quel
processus passe en premier en phase d’exé cution.
L’ordonnanceur (Scheduler) a donc la tâ che ingrate de
Prof. M. Boulemden 2/10
Processeur
Politique d’Ordonnancement
A la base, il y a donc ce qu’on peut appeler une « politique
d’ordonnancement » qui consiste à dé cré ter un certain
nombre de rè gles pour une gestion optimale des
ressources disponibles. Ces rè gles peuvent ê tre statiques
ou dynamiques selon le type de RTOS.
Prof. M. Boulemden 3/10
Préemption
Une notion importante à se rappeler est qu’un RTOS peut
ê tre préemptif ou non préemptif. La notion de
préemption ré fè re à la capacité du systè me d’exploitation
de retirer le processeur, ou toute autre ressource, au
processus en cours d’exé cution. La plupart, pour ne pas
dire pratiquement tous les RTOS, pré sentent un caractè re
pré emptif d’une maniè re ou d’une autre car il est rarement
accepté de laisser une quelconque tâ che d’un processus se
comporter à sa guise.
Tâche
Ce qui nous amè ne au concept de « tâche » dans un RTOS.
Une tâ che est une suite d’opé rations à exé cuter sous-
tendues par un programme. Mais un programme est une
entité repré senté e par un semble d’instructions stocké es
quelque part en mé moire. On parle alors de tâ che au
moment où le programme en question se met en
exécution. D’un point de vue d’un informaticien, une
tâche est donc un programme en exécution par
opposition à un programme qui reste une entité figé e
stocké e en mé moire.
Prof. M. Boulemden 4/10
Un numé ro de tâ che,
Une priorité ,
Une zone de mé moire programme,
Une zone de mé moire données,
Une zone de mé moire pile,
Autres.
Ces paramè tres et autres sont stocké s en mé moire et
repré sente ce qu’on appelle le « contexte » d’une tâ che.
Lorsque l’ordonnanceur suspend une tâ che et lance une
autre, il doit sauvegarder le contexte de la tâ che
suspendue et ré cupè re celui de la tâ che élue. Les é tats
« suspendu » et « é lu » font partie des é tats possibles
d’une tâ che tout au long de son é volution.
Task
Evolution
Processor
Control
Time
Evolution
tref tw ts te td
Fig. 2.5Evolution d’une tâche
Prof. M. Boulemden 5/10
td - te >= 0
B. Algorithmes
d’Ordonnancement
Round Robin
Simple Priority
C. Exercices
tc = 0.1 ms
Et le Quantum :
T = 1 ms
Prof. M. Boulemden 9/10
Task ts te Duration
T1
T2
T3
Total Duration
Prof. M. Boulemden 10/10