frank singhoff bureau c-203 université de brest, france...

22
Introduction aux systèmes temps réel Frank Singhoff Bureau C-203 Université de Brest, France LISyC/EA 3883 [email protected] UE applications de l’informatique, Université de Brest – Page 1/22

Upload: lyphuc

Post on 13-Apr-2018

219 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

Introduction aux systèmes temps réelFrank Singhoff

Bureau C-203

Université de Brest, France

LISyC/EA 3883

[email protected]

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

Page 2: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 3: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 4: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 5: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 6: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 7: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 8: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 9: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 10: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 11: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 12: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 13: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 14: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

Exemple de l’automobile (5)

• Compilation croisée :

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

Page 15: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 16: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 17: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 18: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 19: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 20: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 21: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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

Page 22: Frank Singhoff Bureau C-203 Université de Brest, France ...beru.univ-brest.fr/~singhoff/ENS/UE_Appli_Info/CM/intro.pdf · Plan du cours 1. Concepts de base : c’est quoi un système

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