19

Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Embed Size (px)

Citation preview

Page 1: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Introduction aux Systèmes Temps Réel

Nicolas NAVET

2010/2011

http://www.loria.fr/~nnavet

Introduction aux systèmes temps réel

Page 2: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Plan du cours

1. Systèmes temps réel : exemples et fondamentaux

2. Conception des applications temps réel : quelles techniques pour véri�er

le respect des contraintes ?

3. Ordonnancement : choix de la bonne séquence d'exécution des activités

du système ..

Introduction aux systèmes temps réel 1

Page 3: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Systèmes temps réel : introduction

4 Systèmes temps réel : correction logique et temporelle des

résultats

4 Contraintes temporelles sont issues de la dynamique du processus

contrôlé

4 Le plus souvent, les systèmes temps réel sont embarqués, c'est à

dire, physiquement liés au processus contrôlé

4 Ordonnancer c'est déterminer un ordre sur les activités d'un système

Introduction aux systèmes temps réel 2

Page 4: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Systèmes embarqués temps réel : exemples

4 Impact dans la société :

� le marché des systèmes embarqués ' architectures clients / serveurs + PC� Chaque jour, on utilise environ 80 processeurs de manière transparente

Introduction aux systèmes temps réel 3

Page 5: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

X-by-Wire dans l'automobile

Introduction aux systèmes temps réel 4

Page 6: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Typologie des contraintes de temps

8 Contrainte de date au plus tard sur la �n d'exécution (ou contrainted'échéance - �deadline�)

8 Contrainte de type �(m, k) �rm� : respecter au moins m échéances toutes les kactivations

8 Contrainte de précédence entre tâches

8 Minimisation de la gigue sur les �ns d'exécution des tâches

8 Maximisation de la fraîcheur des données d'entrée d'un algorithme

8 Maximisation de la cohérence temporelle des données d'entrée d'un algorithme

4 On parle de contraintes de temps :

� strictes (hard real-time) : non-respect catastrophique� souples (soft real-time) : non-respect occasionnel sans conséquence� de type best e�ort : on fait pour le mieux ..

4 Ordonnancement est faisable ssi toutes les contraintes sont respectées

Introduction aux systèmes temps réel 5

Page 7: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Contraintes de bout-en-bout : un exemple

t

t

t

ressource (CPU ou réseau) utilisée

BV

réseau

CM

changement de vitesse

couple moteur effectivement réduit

τG

τL

τP

ΙR ΨR

τreaction

τt

τe δ

propa

τα

p_msgr

p_repr

τp_msg

τp_rep

Figure 1: Décomposition d'une contrainte de temps entre un changement de vitesseet la réduction du couple moteur associée

Introduction aux systèmes temps réel 6

Page 8: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Conception d'un système temps réel

Cahier des Charges (fonctionnalités et contraintes)

Architecture Matérielle Architecture Logicielle

Architecture Fonctionnelle

Architecture Opérationnelle

Evaluation de Performances

Contraintesrespectées ?

Remise encause dechoix deconception

Placement et Configuration

Architecture Validée

oui

non

− Modèles analytiques− Modèles de simulation− Prototypes, maquettes− Approches hybrides

4 Dans les systèmes temps réel, la véri�cation du respect des contraintes (=validationdu système) est cruciale ...

Introduction aux systèmes temps réel 7

Page 9: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Techniques de validation (1/2)

4 Observation sur prototypes :

+ pas d'hypothèse simpli�catrice

+ certaines contraintes ne peuvent être véri�ées que sur prototype

- construction, instrumentation longues et coûteuses

- résultats pire-cas sans validité

- intervient tard dans le cycle de vie

4 Modèles analytiques :

+ bien adaptés aux contraintes pire-cas et aux événements rares

+ validité du modèle véri�able

- hypothèses simpli�catrices fortes

- di�cultés de modélisation !

Introduction aux systèmes temps réel 8

Page 10: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Techniques de validation (2/2)

4 Modèles de simulation :

+ moins d'hypothèses simpli�catrices que les modèles analytiques

+ facilité de modélisation

- résultats orientés pire-cas ou événements rares généralement sans validité

- validité des modèles

4 Techniques hybrides :

� couplage de modèles analytiques et de simulation - ex : pro�l decommunication où les couches basses sont modélisées de façon analytique et lescouches hautes sont simulées

� co-simulation hardware / software - ex : on simule l'activation des tâcheset on exécute les tâches sur un processeur réel

Introduction aux systèmes temps réel 9

Page 11: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Classes d'ordonnancement

4 hors-ligne : séquence des exécutions est décidée à la conception puis �déroulée�pendant l'exécution

4 en-ligne : choix d'ordonnancement sont faits en-ligne, ils utilisent certaines carac-téristiques des tâches

4 préemptif (resp. non-préemptif) : une tâche peut être interrompue par uneautre + prioritaire

4 non-oisif (resp. oisif) : le processeur est nécessairement utilisé si il y a du travailen attente d'exécution

4 déterministe : le hasard n'intervient pas dans les choix d'ordonnancement

8 Une politique d'ordonnancement est un algorithme qui détermine en-lignel'activité à exécuter - propriétés requises : décidabilité et implémentabilité

8 Une politique est optimale si elle conduit à un ordonnancement faisable si il enexiste un

Introduction aux systèmes temps réel 10

Page 12: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Modèles de tâches

4 Les tâches sont apériodiques (une seule activation - on parle de jobs) ou, le plussouvent en temps réel, récurrentes

Caractéristiques de tâches récurrentes : τk,n est la nième instance de la tâcheτk avec

� Ak,n sa date d'arrivée : 0 6 Ak,1,6 . . . 6 Ak,n−1 6 Ak,n.

� Tk,ndef= Ak,n+1 − Ak,n est le temps interarrivée. Pour une tâche périodique

Tk,n = Tk ∀n ∈ N.

� Dk,n son échéance, l'échéance relativement à Ak,n est Dk,n, on a Dk,ndef=

Ak,n +Dk,n,� Ck,n son temps d'exécution sur la machine cible - en pratique di�cile à évaluer !

Modèles d'activation : périodique, sporadique (il existe un temps minimum entre2 activations de tâches) ou plus complexes : tâches multi-périodiques, tâches à tempsd'exécution alternés, tâches MPEG etc ...

Introduction aux systèmes temps réel 11

Page 13: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Le paradoxe du lièvre et de la tortue

8 Le processeur 1 (�lièvre�) sous FIFO est 10x plus rapide que le processeur 2 sous EDF(�tortue�)

8 Job A (Ctortue = 200, D = 220, A = 0) - Job B (Ctortue = 10, D = 15, A = 2)

Ordonnancement sur les processeurs �Tortue� et �Lièvre� (G. Le Lann)

4 Nécessité de faire les bons choix d'ordonnancement ... une analyse d'ordonnan-çabilité permet d'étudier la faisabilité du système

Introduction aux systèmes temps réel 12

Page 14: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Analyse d'ordonnançabilité par simulation

Principe : simuler le déroulement de l'ordonnancement du système pendant �unepériode� du système et véri�er que toutes les instances de tâches respectent leuréchéance.

Avantages :

� permet de traiter des politiques d'ordonnancement ou des modèles de tâches quiseraient di�ciles à analyser mathématiquement,

� requiert peu de connaissances en ordonnancement pour être mise en oeuvre.

Inconvénients :

� non utilisable pour des ensembles de tâches quelconques car la période du systèmeest au minimum un PPCM des périodes des tâches,

� comme pour tout modèle de simulation se pose la question de la validité /correction du modèle ...

Introduction aux systèmes temps réel 13

Page 15: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Analyse d'ordonnançabilité par test de faisabilité

Principe : appliquer une formule (close) qui en fonction des caractéristiques destâches décide de la faisabilité. Ex : faisabilité sous EDF ssi

∑ CiTi

6 1 avec Ti la

période et Ci le temps d'exécution de la tâche τi.

Avantages :

� simplicité de mise en oeuvre,� en général le calcul a une complexité faible : souvent le test est basé uniquement

sur la charge du système.

Inconvénients :

� n'existe pas pour toutes les politiques,� ne couvre pas tous les modèles de tâches : généralement tâches périodiques avecDk = Tk,

� il ne s'agit souvent que de conditions su�santes et non de conditions su�santeset nécessaires,

� en cas de non-faisabilité, ne donne pas d'indication sur les tâches qui posentproblèmes.

Introduction aux systèmes temps réel 14

Page 16: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Analyse d'ordonnançabilité par calcul

de bornes sur les temps de réponse

Principe : appliquer une formule de récurrence qui calcule itérativement les datesde �n d'exécution sur un morceau de trajectoire. Le morceau de trajectoire a étéconstruit/choisi de façon à contenir les plus grands temps de réponse que la tâcheconsidérée pourra recontrer.

Avantages :

� le calcul de bornes sur les temps de réponse est possible pour la quasi totalité despolitiques ayant un intérêt dans le temps réel,

� des modèles de tâches complexes peuvent être pris en compte,� en cas de non-faisabilité, des informations sont disponibles sur les tâches qui posent

problème.

Inconvénients :

� calculs parfois complexes algorithmiquement.

Introduction aux systèmes temps réel 15

Page 17: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Ordonnancement : la politique Earliest Deadline First (EDF)

Principe : “plus petite l’échéance, plus grande la priorité”

Propriétés : optimalité vis-à-vis de la contrainte d’échéance pour l’ordonnancementmono-processeur préemptif

Exercice : décider de la faisabilité des deux tâches périodiques τ1 (C1 = 2, T1 =5, D1 = 5, A1,1 = 0) et τ2 (C2 = 4, T2 = 7, D2 = 7, A2,1 = 0) sous la politique EDF.

0

τ2

τ1

10 20 30 40 50

Introduction aux systèmes temps réel, ENSEM 16

Page 18: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Ordonnancement : autres politiques de base

Fixed-Priority Preemptive (FPP) : toutes les instances d’une tâche possèdent lamême priorité (6=EDF). Allocation des priorités : Rate-Monotic (+petite la période,+grande la prio), Deadline Monotonic ou selon l’importance de la tâche.

Round-Robin : chaque tâche possède le CPU pendant un quantum de temps puisla tâche suivante prend la main

Ψk,n τ2,n

τ5,n

τ4,n

τ6,n

τ3,n

τ7,n τ1,n

Moins utilisées : Shortest Remaining Time First (optimale vis-à-vis du temps deréponse moyen), First-In First-Out (FIFO), Last-In First-Out (LIFO), ...

Introduction aux systèmes temps réel, ENSEM 17

Page 19: Nicolas NAVET 2010/2011 nnavetnicolas.navet.eu/cours/Cours2010/intro-TR-2010.pdf · Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. ... 4 L'informatique embarquée

Perspectives

4 L'informatique embarquée temps réel prend une place de + en + importante dansnotre société

4 De plus en plus de systèmes sont critiques du point de vue sécurité d'où l'importancede la validation ...

4 Sous des hypothèses de fonctionnement déterministe du système (pas d'erreurs detransmission, pas d'erreurs logicielles, temps d'exécution connu, ...), on sait véri�erla faisabilité d'un système temps réel

4 En pratique, des aléas peuvent survenir .. les approches de conception s'oriententvers

� validation probabiliste des contraintes (ex : distribution des temps de réponse)� intégrer les problématiques de sûreté de fonctionnement (ex : �abilité, disponibi-

lité,. . . )� avec pour objectif de se situer sous un certain seuil de risque jugé acceptable (ex :

10−9défaillance grave par heure de fonctionnement pour l'avionique)

Introduction aux systèmes temps réel 19