Sunteți pe pagina 1din 10

(Suite chapitre X)

10.6 Ordonnancement RM (Rate-Monotonic : Ordonnancement à taux monotone)


10.6.1 Caractéristiques du RM
Le “Rate monotonic” a été introduit par Liu & Layland en 1973.
- Basé sur les priorités
- Priorités fixes
- Les tâches sont périodiques :
o pas de communication,
o temps de commutation négligeable
- L'échéance correspond à la période (Di = Pei)
- Complexité faible et implémentation facile dans un OS
- Algorithme optimal dans la classe des algorithmes à priorité fixe

Si la(les) condition(s) d'ordonnançabilité sont satisfaites:


- On calcule la priorité de chaque tâche comme suit:

(Inverse de la période)

- Puis l'ordonnanceur sélectionne le processus avec la plus haute priorité.

10.6.2 Conditions d'ordonnançabilité


- Pour qu'un ensemble de tâches soit ordonnançable pour le Rate-Monotonic, il suffit que:

Le tableau suivant donne les valeurs de U pour un nombre de tâches de 1 à 10 :

Chapitre X - CEG4566/CSI4541 – RNM – SIGE – UOttawa – Hiver 2013 9


Cette équation exprime que lorsque n → ∞, l'utilisation du processeur doit rester inférieur à
69.3%
C'est une condition suffisante (mais non nécessaire)

10.6.3 Exemple (1) d’ordonnancement RM (D’après Daniel Rossier, heig-vd)

⇒ Condition d'ordonnançabilité RM satisfaite

10.6.4 Exemple (2) d’ordonnancement RM (D’après Daniel Rossier, heig-vd)

Chapitre X - CEG4566/CSI4541 – RNM – SIGE – UOttawa – Hiver 2013 10


⇒ Condition d'ordonnançabilité non satisfaite
⇒ Ordonnançable néanmoins

10.6.5 Temps de réponse dans l’ordonnancement RM


Calcul du temps de réponse d'une tâche :
- Dans le meilleur des cas, le temps de réponse correspond au temps d'exécution de la
tâche.
- Le temps de réponse peut varier en fonction de la durée réelle.
o Temps de réponse correspondant au pire cas; On considère le temps d'exécution
Ci.
- Le temps de réponse dépend des tâches plus prioritaires.

- Le temps de réponse d'une tâche dépend des tâches plus prioritaires

Chapitre X - CEG4566/CSI4541 – RNM – SIGE – UOttawa – Hiver 2013 11


- Soit hp(i) l'ensemble des tâches de plus forte priorité que i.
- Plafond  n  : entier qui suit n, exemple 4/3 =2
- Le temps de réponse est définit comme suit:

- C'est une équation récurrente difficile à résoudre.


- Pour le calcul, on utilise une technique itérative : On évalue Ri de façon itérative avec
ω in

- On démarre avec ω i0 = C i

- On s'arrête lorsque ω in +1 = ω in

Ci
o La convergence est assurée tant que : ∑ Pe ≤1
i

Exemple :

Chapitre X - CEG4566/CSI4541 – RNM – SIGE – UOttawa – Hiver 2013 12


10.7 Ordonnancement DM (Deadline Monotonic)
10.7.1 Caractéristiques
- RM pénalise les tâches rares mais urgentes (grande périodicité = petite priorité).
- DM sera meilleur pour les tâches dont l'échéance est très inférieure à la période.

10.7.2 Hypothèses du DM
Identiques à celles du Rate-Monotonic, mais avec la possibilité d'avoir des échéances inférieures
à la période (Di < Pei).

10.7.3 Condition d'ordonnançabilité de DM


- La condition (suffisante) d'ordonnançabilité devient:

- La tâche DOIT se terminer avant l'échéance Di


- La condition générale nécessaire d'ordonnançabilité est toujours valable

Chapitre X - CEG4566/CSI4541 – RNM – SIGE – UOttawa – Hiver 2013 13


10.7.4 Algorithme DM
- Si la(les) condition(s) d'ordonnançabilité sont satisfaites:
o On affecte la priorité aux tâches selon l'ordre inverse de leurs échéances.

o Puis l'ordonnanceur sélectionne le processus p avec la plus haute priorité.

10.7.5 Exemple d’ordonnancement DM (D’après Daniel Rossier, heig-vd)

⇒ Condition d'ordonnançabilité DM non satisfaite

10.8 Ordonnancement EDF (Earliest Deadline First: Échéance la plus proche d’abord
10.8.1 Caractéristiques
- Priorités dynamiques
- Supporte des tâches apériodiques

10.8.2 Algorithme de l’ordonnancement EDF


- Algorithme optimal dans la classe des algorithmes à priorité dynamique.
- Échéances quelconque (Di ≤ Pei), mais connues au réveil.
- L'algorithme consiste à sélectionner la tâche qui a l'échéance la plus proche dans le
temps.
- Les priorités sont dynamiquement attribuées en fonction des échéances, au fil du temps.

10.8.3 Condition d’ordonnançabilité EDF

- Afin qu'un ensemble de tâches soit ordonnançable pour EDF, il suffit que:

Chapitre X - CEG4566/CSI4541 – RNM – SIGE – UOttawa – Hiver 2013 14


- La condition devient "nécessaire et suffisante" si:
∀i, Di = Pei
- Le processeur peut être occupé à 100%
- A la différence de RM, on peut garantir que les tâches seront ordonnançable si U ≤ 1

10.8.4 Optimisation de EDF


- EDF est optimal (i.e : tout ensemble de tâches faisable pourra être ordonnancé).
- Algorithme d’optimisation :
o on part d’un ordonnancement par itération on déplace des unités de traitements
pour tendre vers un ordonnancement EDF
Exemple :
Départ

Itération 1 :
On “avance” dans le temps en faisant s’exécuter la tâche qui à l’échéance la plus proche en
échangeant des parties du traitement.

Itération 2 :

Chapitre X - CEG4566/CSI4541 – RNM – SIGE – UOttawa – Hiver 2013 15


Itération 3 :

Itération 4 :

Itération 5 :

Chapitre X - CEG4566/CSI4541 – RNM – SIGE – UOttawa – Hiver 2013 16


10.8.5 Avantages et désavantages du EDF
- Avantages :
o Ordonnancement optimal en ce qui concerne l'utilisation du processeur
(utilisation à 100%)
o Peut traiter des tâches apériodiques
- Désavantages :
o Implémentation difficile, il faut réajuster les priorités au fil du temps en testant
les différentes échéances.
o Le temps de réponse ne se calcule pas facilement.

10.9 Ordonnancement LLF (Least Laxity First : Marge la plus courte d’abord)
10.9.1 Caractéristiques
- L'algorithme LLF est assez similaire à l'algorithme EDF.
- Il se base sur la laxité des tâches.
- La laxité LA est l'écart maximal entre la date d'activation de la tâche A et sa date de
démarrage de sorte que l'échéance DA soit respectée.

- L'algorithme consiste à sélectionner la tâche qui a la plus petite laxité dans le temps.
- Les priorités sont dynamiquement attribuées en fonction des laxités, au fil du temps.
- Par conséquent :
o la laxité diminue lorsque la tâche n'a pas encore commencé.
o la laxité reste constante lorsque la tâche a démarré.
o Par conséquent, il peut y avoir de fréquents changements de contexte.

10.9.2 Exemple (D’après Daniel Rossier, heig-vd)

Chapitre X - CEG4566/CSI4541 – RNM – SIGE – UOttawa – Hiver 2013 17


Note concernant le EDF et LLF :
- Si on prend des conditions identiques à monotone à taux la condition de faisabilité est à
100% du temps CPU.
- Néanmoins les algorithmes ne sont pas stables : en cas de surcharge du processeur des
tâches peuvent ne pas respecter leurs échéances.

En résumé :

RM EDF LLF

Statique Dynamique Dynamique


Test = Charge < 70% Test = Charge < 100% Test = Charge < 100%
Théorème de la zone critique Moins de changements de
=> Précision contexte
Optimal Optimal
+/ quand les taches +/ quand les taches
arrivent en désordre et Ci arrivent en désordre et Ci
inconnu inconnu

Chapitre X - CEG4566/CSI4541 – RNM – SIGE – UOttawa – Hiver 2013 18

S-ar putea să vă placă și