La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Systèmes en temps réel Critères dordonnancement en temps réel Partie I.

Présentations similaires


Présentation au sujet: "Systèmes en temps réel Critères dordonnancement en temps réel Partie I."— Transcription de la présentation:

1 Systèmes en temps réel Critères dordonnancement en temps réel Partie I

2 Ordonnancement (partie 1) - 2 Synopsis Requis temporels Concurrence et ordonnancement Mécanismes dordonnancement Notation Algorithme Taux Monotone (Rate Monotonic Algorithm) Théorème des bornes dutilisation Exemples

3 Ordonnancement (partie 1) - 3 Requis temporels Doù viennent les requis temporels? Requis de haut niveau (explicite) Assemble deux gugusses chaque seconde Brouille un émetteur en-dedans de 250 millisecondes de son identification Requis dérivés (implicite) précision: tracer une position démetteur à une précision de 5 0 nous mène à la périodicité dépendance: se remettre dun message perdu en dedans de 500 msec interface utilisateur: répond à une clé de clavier en dedans de 200 msec

4 Ordonnancement (partie 1) - 4 Concurrence et ordonnancement Les systèmes concurrents démontrent un non- déterminisme extrême considérez un simple système concurrent à 5 tâches il y a 120 permutations possibles pour lexécution dans un système non-préemptif et une infinité pour un système préemptif Les systèmes en temps réel doivent restreindre ce non-déterminisme en utilisant lordonnancement Ont définit le critère dordonnancement comme lévaluation de la capacité quun système a de rencontrer ses échéanciers (deadlines)

5 Ordonnancement (partie 1) - 5 Mécanismes dordonnancement Un mécanisme dordonnancement fournit: Un algorithme pour lutilisation des ressources du système Une façon de prédire le comportement dans le pire cas Il y a deux classifications de mécanismes Statique (compile-time) et dynamique (run-time) Nous allons seulement étudier les mécanismes statiques et en particulier, les méthodes préemptive basées sur les priorités Mécanismes utilisent: Un algorithme dassignation des priorités; et Un test dordonnancement

6 Ordonnancement (partie 1) - 6 Notation C:temps dexécution de pire cas pour une tâche T: temps minimum entre le re-lancement de la tâche (période) P: priorité assignée à la tâche N:nombre de tâches dans le système R: temps de réponse pire cas pour la tâche B:temps de blocage pire cas pour la tâche I:temps dinterférence de la tâche Définit Utilisation: U = C/T

7 Ordonnancement (partie 1) - 7 Définit un simple modèle de tâche Supposition: Un ensemble de tâches fixes Toutes les tâches sont périodiques Les tâches sont complètement indépendantes * Tous les surdébits (changement de contexte) sont ignorés (ou inclus dans les temps dexécution des tâches) Les échéanciers des tâches sont égales à leurs période Implique que les tâches doivent compléter avant le re-lancement Toutes les tâches ont un temps dexécution pire cas Instant Critique – définit comme étant la condition de charge maximum quand toutes les tâches sont relâchées en même temps

8 Ordonnancement (partie 1) - 8 Algorithme taux monotone Rate Monotonic Algorithm (RMA) Une méthode dassignation de priorité pour le modèle de tâches décrit plus tôt de tel façon à ce que: Chaque tâche se voit assigner une priorité basée sur sa période, là où Plus courte est la période, plus haute est la priorité Exemple: TâchePériode (T)Priorité (P) A B 25 1*plus haute C D 60 2

9 Ordonnancement (partie 1) - 9 Théorème des bornes dutilisation Un ensemble de N tâches périodiques indépendantes ordonnancées avec lalgorithme de taux monotone va toujours rencontrer ses échéanciers, si C 1 /T 1 + … C N /T N N(2 1/N - 1) = U RM (N) U RM (N) converge à 69% pour un N large Un test suffisant mais non nécessaire c.-à-d. nous ne pouvons pas dire quun système avec une valeur dutilisation plus haute ne peut pas être ordonné

10 Ordonnancement (partie 1) - 10 RMA Exemple 1 TâcheC i T i U i A B C U 1 + U 2 + U 3 = 0.7, et est U RM (3) où U RM (3) = 3*(2 1/3 - 1) = Donc ces tâches vont toujours rencontrer leurs échéanciers avec lordonnancement: P(A) = 1, P(B)=2, P(C)=3

11 Ordonnancement (partie 1) - 11 RMA Exemple 1 t C B A idle Tâche lancée - Tâche complète TaskCi TiUi A B C

12 Ordonnancement (partie 1) - 12 TâcheC i T i U i A B C U 1 + U 2 + U 3 = 0.82, et nest pas U RM (3) où U RM (3) = 3*(2 1/3 - 1) = Donc ces tâches échouent le test dutilisation, et en regardant le diagramme Gantt, on peut voir que les échéanciers ne seront pas rencontrés RMA Exemple 2

13 Ordonnancement (partie 1) - 13 RMA Exemple 2 t C B A Tâche lancée - Tâche complète 10 x x - Échéancier manqué TaskCi TiUi A B C

14 Ordonnancement (partie 1) - 14 RMA Exemple 3 TâcheC i T i U i A B C U 1 + U 2 + U 3 = 1.00, et nest pas U RM (3) encore où U RM (3) = 3*(2 1/3 - 1) = Ces tâches échouent clairement le test dutilisation, mais après avoir regardé le diagramme Gantt, on peut voir que les échéanciers sont respectés????

15 Ordonnancement (partie 1) - 15 RMA Exemple 3 t C B A Tâche lancée - Tâche complète TaskCiTiUi A B C

16 Ordonnancement (partie 1) - 16 Points additionnels sur RMA RMA a lavantage dêtre stable dans les conditions de surcharge transitoires Un sous ensemble des tâches (celle avec les priorités les plus hautes) vont encore rencontrer leurs échéanciers même en condition de surcharge temporaire. Théorème de temps de complétion Pour un ensemble de tâches périodiques, si chaque tâche rencontre son premier échéancier, quand toutes les tâches sont lancées en même temps, alors tous les échéanciers seront rencontrés chaque fois.

17 Ordonnancement (partie 1) - 17 Le point faible de RMA et test dU Le test dutilisation nest pas exacte Suffisant, mais pas nécessaire Donc nous devons utiliser dautres tests (autre que de vérifier les cédules à la main) Le modèle de tâches simple est trop restrictif Permet seulement les tâches périodiques Toutes les tâches doivent être indépendantes implique que aucune ressources ne peuvent être partagées (pas de mutexes et de précédences) Introduit Analyse du temps de réponse - un test de critère dordonnancement plus fort Supporte les tâches apériodiques (sporadiques) ainsi que la dépendance inter-tâches

18 Ordonnancement (partie 1) - 18 Références [1] Burns, A. and Wellings, A., Real-Time Systems and Programming Languages, Chapter 13, Addison Wesley, 1997 [2] TimeSys Corp, The Concise Handbook of Real-Time Systems, Version 1.0, 1999 [3] [4] Gomaa, H., Software Design Methods for Concurrent and Real-Time Systems, Addison- Wesley, 1993.


Télécharger ppt "Systèmes en temps réel Critères dordonnancement en temps réel Partie I."

Présentations similaires


Annonces Google