Frank Singhoff Bureau C-203 Université de Brest, France...

Preview:

Citation preview

Introduction aux systèmes temps réelFrank Singhoff

Bureau C-203

Université de Brest, France

LISyC/EA 3883

singhoff@univ-brest.fr

UE applications de l’informatique, Université de Brest – Page 1/22

Plan du cours

1. Concepts de base : c’est quoi un système temps réel.

2. Exemple d’un système temps réel critique : un systèmeautomobile.

3. Exemple d’un système temps réel non critique : uneapplication multimédias.

4. Résumé, ce qu’il faut retenir.

UE applications de l’informatique, Université de Brest – Page 2/22

Présentation, définitions (1)

• "En informatique temps réel, le comportement correct d’un systèmedépend, non seulement des résultats logiques des traitements, mais aussidu temps auquel les résultats sont produits" [STA 88].

• Objectifs :

Déterminisme logique : les mêmes entrées appliquées au systèmeproduisent les mêmes résultats.

Déterminisme temporel : respect des contraintes temporelles (ex :échéance).

Fiabilité : le système répond à des contraintes de disponibilité(fiabilité du logiciel et du matériel).

=⇒ Système prédictible : on cherche à déterminer a priori si le systèmeva répondre aux exigences temporelles.

• Un système temps réel n’est pas un système "qui va vite" mais u nsystème qui satisfait à des contraintes temporelles.

UE applications de l’informatique, Université de Brest – Page 3/22

Présentation, définitions (2)

• Exemples de grandeur [DOR 91, DEM 99] :

La milliseconde pour les systèmes radar.

La seconde pour les systèmes de visualisation humain.

Quelques heures pour le contrôle de productionimpliquant des réactions chimiques.

24 heures pour les prévisions météo.

Plusieurs mois ou années pour les systèmes denavigation de sonde spatiale.

UE applications de l’informatique, Université de Brest – Page 4/22

Présentation, définitions (3)

• Classement des systèmes temps réel selon lerespect des contraintes temporelles :

Respect des contraintes déterministes, probabilistes ou“best effort”.

Systèmes temps réel dur ou critique .

Systèmes temps réel mou ou souple .

Systèmes temps réel ouvert ou fermé .

UE applications de l’informatique, Université de Brest – Page 5/22

Présentation, définitions (4)

• Classement des systèmes temps réel selon leur environnement.

• Systèmes embarqués, ou Embedded systems, ou systèmesenfouis : systèmes informatiques dans lequel le processeur/calculateurest englobé dans un système plus large et/ou que le logiciel estentièrement dédié à une application donnée. (ex : une sonde spatiale, untéléphone mobile).

• Systèmes répartis : "Un système réparti est un ensemble de machinesautonomes connectées par un réseau, et équipées d’un logiciel dédié à lacoordination des activités du système ainsi qu’au partage de sesressources." Coulouris et al. [COU 94].

• Système réparti temps réel pour des raisons de :

Fiabilité (redondance).

Contraintes physiques.

Partage des données, périphériques, ...UE applications de l’informatique, Université de Brest – Page 6/22

Présentation, définitions (5)

• Problèmes liés aux systèmes embarqués :

Intervention humaine directe difficile voire impossible.

• Problèmes liés aux systèmes répartis :

Localisation des ressources (programmes,périphériques, processeurs, ...).

Hétérogénéité (matériel et logiciel).

Performance (recouvrement des communications,prédictibilité).

UE applications de l’informatique, Université de Brest – Page 7/22

Exemples de systèmes temps réel

• Préface d’un livre sur le temps réel souple : "This book is aboutreal-world programming ... So real-world programs (and real-worldprogrammers) are all around us. What characterizes all of thesereal-world applications is a critical dependence on time." [GAL 95]

Transports : métro, aéronautique (avions, satellites, spacial), trains,automobile, ...

Multimédias : décodeurs numériques openTV, décodeurs TNT,MPEG, jeux vidéo. films d’animation.

Services téléphoniques : téléphone mobile, auto-commutateur.

Supervision médicale, écologique.

Système de production industriel : centrale nucléaire, chaîne demontage, usine chimique.

Robotique (ex : PathFinder).

etc... UE applications de l’informatique, Université de Brest – Page 8/22

Plan du cours

1. Concepts de base : c’est quoi un système temps réel.

2. Exemple d’un système temps réel critique : un systèmeautomobile.

3. Exemple d’un système temps réel non critique : uneapplication multimédias.

4. Résumé, ce qu’il faut retenir.

UE applications de l’informatique, Université de Brest – Page 9/22

Exemple de l’automobile (1)

Architecture:

Matériel et logiciel dédiés : ECU = Electronic Control Unit(processeur). CAN = Controller Area Network (réseau). Systèmed’exploitation OSEK-VDX.

Système fermé, validé a priori.

Utilisation de redondance matérielle et logicielle et de matériel dontle coût/fiabilité est élevé (sauf automobile).

UE applications de l’informatique, Université de Brest – Page 10/22

Exemple de l’automobile (2)

• Exigences des systèmes temps réel critiques :

Contraintes temporelles : temps de réponse, échéance,date d’exécution au plus tôt, cadence, etc.

Dimensionnement au pire cas et réservation desressources.

• Exemple de l’ESP (Electronic Stability Program) :

Capteurs concernés : volant, roues.

Actionneurs : injection moteur, frein.

Contrainte : réaction sur les freins et l’injection suite àun coup de volant brusque en moins de 150milliseconde =⇒ temps de réponse ≤ 150 ms.

UE applications de l’informatique, Université de Brest – Page 11/22

Exemple de l’automobile (3)

• Système d’exploitation : couche logicielle qui gère les périphériques et founit uneinterface simplifiée avec le matériel [TAN 01].

• Objectif :

Partager les ressources équitablement.

Abstraire le matériel et donc faciliter son utilisation.

Adapté à tous les types d’applications.

• Systèmes d’exploitation pour applications non temps réel : Windows, Linux, Mac-OS.

UE applications de l’informatique, Université de Brest – Page 12/22

Exemple de l’automobile (4)

21.4219.7

12.84

10.19

6.645.964.69

2.863.89

2.41 2.3 1.951.83 1.611.72

Choru

sOS

Autre

s

RT-Linu

x

RTX

Nucleu

s+

Wind

ows C

E

iRM

XIII

Lynx

OS

VRTX

OS9

Wind

ows N

T

5

10

15

20

25

30

Pou

rcen

tage

Nombre d’entreprises utilisant le système

vxW

orks

pSOS

Solutio

n pr

oprié

taire

QNX

Systèmes temps réel embarqués

• Système d’exploitation pour le temps réel :

Très nombreux systèmes : un système d’exploitation pour undomaine applicatif, voire une application.

Souvent simple, déterministe, de faible envergure, configurable.

UE applications de l’informatique, Université de Brest – Page 13/22

Exemple de l’automobile (5)

• Compilation croisée :

UE applications de l’informatique, Université de Brest – Page 14/22

Plan du cours

1. Concepts de base : c’est quoi un système temps réel.

2. Exemple d’un système temps réel critique : un systèmeautomobile.

3. Exemple d’un système temps réel non critique : uneapplication multimédias.

4. Résumé, ce qu’il faut retenir.

UE applications de l’informatique, Université de Brest – Page 15/22

Exemple de Msn sur Internet (1)

• Architecture :

Plate-forme généraliste. Déterminisme temporel faible à cause dumatériel et du logiciel : PC + windows + Internet.

Application interactive.

Débits variables et difficiles à estimer hors ligne (codage desinformations).

UE applications de l’informatique, Université de Brest – Page 16/22

Exemple de Msn sur Internet (2)

• Exigences pour cette application multimédia (qui estun système temps réel non critique) :

Contraintes temporelles différentes : synchronisationsintra et inter-flux, latence de bout en bout, ...

Système ouvert, impossible de valider a priori.

Impossible de réserver les ressources ou d’analyser lesbesoins : on fait au mieux ("best-effort").

Besoin en matériel quasi-infini !

UE applications de l’informatique, Université de Brest – Page 17/22

Exemple de Msn sur Internet (3)

• Exemples de contraintes :

1. Contraintes spaciales :

Audio qualité voie téléphonique : 64 Kbits/s

Audio qualité CD : 1,4 Mbits/s

Vidéo MPEG 2 CBR : 2 Mbits/s (cf. TV numérique)

2. Contraintes temporelles :

Intra-flux vidéo : cadence de 40 ms (Europe, PAL/SECAM) ou 33ms (USA, NTSC)

Voix-lèvres (inter-flux) : variation de +/- 80 ms maximum (gigue)

Téléphonie : délais de bout en bout ≤ 250 ms

=⇒ Contraintes temporelles très contextuelles (type de films, capacité deperception du spectateur).

UE applications de l’informatique, Université de Brest – Page 18/22

Plan du cours

1. Concepts de base : c’est quoi un système temps réel.

2. Exemple d’un système temps réel critique : un systèmeautomobile.

3. Exemple d’un système temps réel non critique : uneapplication multimédias.

4. Résumé, ce qu’il faut retenir.

UE applications de l’informatique, Université de Brest – Page 19/22

Résumé, ce qu’il faut retenir

Systèmes temps réel : systèmes informatiques contraints par letemps. De très nombreux systèmes informatiques sont temps réel.

Systèmes temps réel critiques et non critiques.

Systèmes temps réel critiques :

Conséquences tragiques (vies humaines, faillites économiques).en cas de non respect des contraintes temporelles.

Logiciels, matériels spécifiques.

Systèmes temps réel non critiques :

Conséquences mineures en cas de non respect des contraintestemporelles (ex: application multimédias).

Logiciel et matériel généralistes.

UE applications de l’informatique, Université de Brest – Page 20/22

Références (1)

[COU 94] G. Coulouris, J. Dollimore, and T. Kindberg.Distributed Systems—Concepts and Design, 2nd Ed.Addison-Wesley Publishers Ltd., 1994.

[DEM 99] I. Demeure and C. Bonnet. Introduction auxsystèmes temps réel. Collection pédagogique detélécommunications, Hermès, septembre 1999.

[DOR 91] A. Dorseuil and P. Pillot. Le temps réel en millieuindustriel. Edition DUNOD, Collection InformatiqueIndustrielle, 1991.

UE applications de l’informatique, Université de Brest – Page 21/22

Références (2)

[GAL 95] B. O. Gallmeister. POSIX 4 : Programming for theReal World . O’Reilly and Associates, January 1995.

[STA 88] John Stankovic. « Misconceptions about real-timecomputing ». IEEE Computer, October 1988.

[TAN 01] A. Tanenbaum. Modern Operating Systems.Prentice-Hall, 2001.

UE applications de l’informatique, Université de Brest – Page 22/22

Recommended