Uploaded by Ilyes Kouinini

Chap X 2 H13

advertisement

(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

ω n i

-

-

On démarre avec ω i

0

= C i

On s'arrête lorsque ω i n +

1

= ω i n o

La convergence est assurée tant que :

C i

Pe i

1

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.

Puis l'ordonnanceur sélectionne le processus p

avec la plus haute priorité. o

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, D i

= Pe i

-

-

Le processeur peut être occupé à 100%

A la différence de RM, on peut garantir que les tâches seront ordonnançable si U

10.8.4 Optimisation de EDF

1

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 o

Implémentation difficile, il faut réajuster les priorités au fil du temps en testant les différentes échéances.

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é L

A 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

D

A 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

Test = Charge < 70%

Théorème de la zone critique

=> Précision

Optimal

Dynamique

Test = Charge < 100%

Moins de changements de contexte

Optimal

+/ quand les taches arrivent en désordre et Ci inconnu

Dynamique

Test = Charge < 100%

+/ quand les taches arrivent en désordre et Ci inconnu

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

Related documents
Download