Vous êtes sur la page 1sur 14

LEEA3: Systèmes Embarqués

2023-2024

Chapitre 2:
Système d’exploitation Temps Réel
(RTOS), Gestion des tâches et
ordonnancement (Partie 2)

1
Planning
• Ordonnancement de priorités (PRIORITIES)
PRIO
• Ordonnancement par Tourniquet/Tour de rôle
(RR : Round Robin)
• Exercices

2
Ordonnancement priorités
(PRIORITIES) PRIO (1)
• Principe:
• Affectation d’une priorité à chaque processus, les
processus sont rangés dans la file d’attente des
processus prêts par ordre de priorité.
• Problème d’ordonnancement:
• les processus moins prioritaires n’arrivent pas à
s'exécuter pendant un temps indéterminé.

• Modifier/incrémenter graduellement la priorité d’un


processus en fonction de son âge et de son historique
d'exécution (vieillissement).

3
Ordonnancement priorités
(PRIORITIES) PRIO (2)
• Exemple de PRIO : Soit 4 processus arrivent au
même temps à l’instant 0.

• 1. Tracer le diagramme temporel des processus


• 2. Calculer le temps moyen d’attente des 4
processus 4
Ordonnancement priorités
(PRIORITIES) PRIO (3)
• Avantages:
• Adapté aux systèmes temps réels durs (strictes),
• Répond efficacement aux interruptions et aux
alertes.
• Inconvénient:
• Problème d’ordonnancement pour les priorités.
• Variantes:
• l'algorithme d’ordonnancement PRIO peut avoir
plusieurs variantes en fonction de la nature des
priorités affectées aux tâches.

5
Ordonnancement priorités
(PRIORITIES) PRIO (4)
• Algorithme à Priorités fixes (RM :
Rate Monotonic) :
• La tâche de plus petite période est la plus
prioritaire. L’utilisation de cet algorithme est
valable uniquement si les tâches sont à
échéance sur requête (P=D) (Période = Délai
critique).
• Test d’acceptabilité: condition suffisante:
6
Ordonnancement priorités
(PRIORITIES) PRIO (5)
• Algorithme Inverse Deadline (ID) ou
Deadline Monotonic (DM):
• La tâche la plus prioritaire est celle de plus
petit délai critique.
• Test d’acceptabilité des taches : condition
suffisante:

7
Ordonnancement priorités
(PRIORITIES) PRIO (6)
• Algorithme à priorité variable ou dynamique
(EDF : Earliest Deadline First) :
• A chaque instant, à chaque réveil de tâche, la
priorité maximale est donnée à la tâche dont
l'échéance est la plus proche.
• Test d’acceptabilité des taches : condition
suffisante:

• Test d’acceptabilité des taches : condition


nécessaire:

8
Ordonnancement priorités
(PRIORITIES) PRIO (7)
• Algorithme à priorité variable
(LLF : Least Laxity First)
• La tâche à qui il reste le moins de marge s’exécute
d’abord. Autrement dit, la priorité maximale est
donnée à la tâche qui a la plus petite laxité
résiduelle L(t).
• Laxité dynamique résiduelle:
𝐿(𝑡)=𝐷(𝑡)−𝐶(𝑡)
Avec: D Délai critique et C Durée d’exécution
9
Ordonnancement par Tourniquet/Tour de rôle (RR :
Round Robin) (1)

• Le processeur est alloué successivement aux


différents processus pour une tranche de temps
fixe Q appelé Quantum (tranche du temps).
• L’efficacité de cet ordonnanceur dépend
principalement de la valeur du quantum Q :
• Q assez petit augmente le nombre de
commutation.
• Q assez grand augmente le temps de réponse du
système → FCFS.
10
Ordonnancement par Tourniquet/Tour
de rôle (RR : Round Robin) (2)
• Avantage:
• Adapté aux systèmes temps partagé,
• Garantit que tous processus sont servis au
bout d’un temps fini
• Méthode préemptive
• Inconvénient:
• Le temps Q optimal est difficilement estimé

11
Exercices (1)
• Exercice 1:
Soit le système temps réel suivant:

12
Exercices (2)
• 1. Calculer la période d'étude de ce système.
• 2. Vérifier l'acceptabilité d'ordonnancement de ce système et tracer
le diagramme temporel (de Gantt) sur une période d'étude en
utilisant RM puis DM.
• 3. Vérifier l'ordonnançabilité de ce système et tracer le diagramme
de Gantt correspondant en utilisant EDF (D3 = 8 au lieu de 9).
• 4. Étudier et tracer l'ordonnancement généré par LLF (D3 = 8).
• Avec:
-RM: Algorithme à Priorités fixes (RM : Rate Monotonic)
-DM: Algorithme Inverse Deadline (ID) ou Deadline Monotonic
(DM)
-EDF: Algorithme à priorité variable ou dynamique (EDF : Earliest
Deadline First)
-LLF: Algorithme à priorité variable (LLF : Least Laxity First)

13
Exercices (3)
• Exercice 2:
Soit le système temps
réel suivant:

1. Tracer le diagramme de Gantt correspondant en utilisant


l’ordonnancement RR avec Q = 4.
2. Trouver le temps moyen d’attente et celui de rotation.
3. Tracer le diagramme de Gantt correspondant en utilisant
l’ordonnancement RR avec Q = 4.
4. Trouver le temps moyen d’attente et celui de rotation.
14

Vous aimerez peut-être aussi