Samia Bouzefrane Maître de Conférences CEDRIC...
-
Upload
truongdang -
Category
Documents
-
view
225 -
download
0
Transcript of Samia Bouzefrane Maître de Conférences CEDRIC...
[email protected] - CEDRIC ( CNAM) -11
Introduction aux systèmes temps réelIntroduction aux systèmes temps réel
Samia Bouzefrane
Maître de Conférences
CEDRIC –CNAM
[email protected]://cedric.cnam.fr/~bouzefra
[email protected] - CEDRIC ( CNAM) -22
SommaireSommaire
1. Définitions2. Exemples d’applications temps réel3. Caractéristiques d’une application temps réel4. Cycle de vie d’une application temps réel5. Méthodes de spécification et de conception6. Langages pour le temps réel7. Le choix d’un exécutif temps réel8. Conclusion
[email protected] - CEDRIC ( CNAM) -33
DéfinitionsDéfinitions
•Un système temps réel est un système (application ou ensemble d’applications)informatique dont le fonctionnement est assujetti à l’évolution dynamique d’un procédé extérieur qui lui est connecté et dont il doit contrôler le comportement.
•La correction d’un système temps réel dépend non seulement de la justesse des calculs mais aussi du temps auquel les résultats sont produits [Stankovic 1988] (contraintes temporelles).
•Un système temps réel n’est pas un système « qui va vite / rapide» mais un système qui satisfait des contraintes temporelles (les contraintes de temps dépendent de l’application et de l’environnement alors que la rapidité dépend de la technologie utilisée, celle du processeur par exemple).
[email protected] - CEDRIC ( CNAM) -44
DéfinitionsDéfinitions
•Un système embarqué (embedded system ou système enfoui) est un systèmeinformatique dans lequel le processeur/calculateur est englobé dans un système plus large et où le logiciel est entièrement dédié à une application donnée.Ex. sonde spatiale, terminal GSM, carte à puce
•Les ressources utilisées pour mener à bien les calculs sont en nombre limité(contraintes matérielles).
•Intervention humaine directe difficile voire impossible.
[email protected] - CEDRIC ( CNAM) -55
Exemples de grandeur des contraintes temporellesExemples de grandeur des contraintes temporelles
-La milliseconde pour les systèmes de radar
-La seconde pour les systèmes de visualisation humaine
-Quelques heures pour le contrôle de production impliquant des réactions chimiques
-24 heures pour les prévisions météo.
-Plusieurs mois ou années pour les systèmes de navigation de sonde spatiale.
[email protected] - CEDRIC ( CNAM) -66
ClassificationClassification
•Temps réel dur ou critique (hard real-time): le non respect des contraintes temporelles entraîne la faute du système.Ex.: contrôle de trafic aérien, système de conduite de missile, etc.
•Temps réel souple (soft real-time): le respect des échéances est important mais le non respect des échéances ne peut occasionner de graves conséquences.Ex.: projection vidéo (décalage entre le son et l’image). Ex.: un robot qui capte des infos sur des objets défilant sur un convoyeur
[Duvallet et al. 1999].
•Temps réel ferme (firm real-time): temps réel souple avec le manquementoccasionnel des échéances.Ex.: projection vidéo (perte de quelques trames d’images).
[email protected] - CEDRIC ( CNAM) -77
Boucle ouverteBoucle ouverte
TraitementsCommandes opérateurs
Actions sur le procédé
[email protected] - CEDRIC ( CNAM) -88
Boucle ferméeBoucle fermée
Programme de contrôle
Automate
capteurs actionneurs
Points de consigne
commandesdonnées
[email protected] - CEDRIC ( CNAM) -99
Caractéristiques du temps réelCaractéristiques du temps réel
•Taille et complexité-Un système temps réel interagit avec un environnement extérieur souvent complexe et en évolution-Il doit respecter des échéances temporelles, garantir une fiabilité permanente-Il doit pouvoir interagir avec différents types d’éléments matériels.
•Implémentation efficace: restrictions dans l’utilisation des constructions du langage
•Certification: garantir un fonctionnement conforme aux spécifications
•Simulation, prototypage: vérification a priori de la conception
•Plate-formes d’essai: vérification a posteriori du bon fonctionnement
[email protected] - CEDRIC ( CNAM) -1010
Exemples d’applications temps réelExemples d’applications temps réel
[email protected] - CEDRIC ( CNAM) -1111
Un système embarqué/temps réelUn système embarqué/temps réel
console interfaceinterface
interface
Calculateur
capteur
capteurcapteur Unité de stockage
de données
actionneur
actionneur
actionneur
[email protected] - CEDRIC ( CNAM) -1212
a f f i c h a g e s
é v é n e m e n t s
S y s t è m e i n f o r m a t i q u e d e c o n t r ô l e
P r o c é d é
c o m m a n d e s
− a u t o m a t e − m o n o p r o c e s s e u r − m u l t i - p r o c e s s e u r − r é s e a u l o c a l
− é q u i p e m e n t s é l é m e n t a i r e s − p r o c é d é c o m p l e x e − e n s e m b l e d 'é q u i p e m e n t s
A c t i o n s
O b s e r v a t i o n s
m e s u r e s
Un système embarqué/temps réelUn système embarqué/temps réel
[email protected] - CEDRIC ( CNAM) -1313
Exemple 1: domaine de l’avioniqueExemple 1: domaine de l’avionique
•Système temps réel critique:
-Contraintes temporelles: échéance, temps de réaction, etc.
-Utilisation de redondance matérielle et logicielle
-Matériel et logiciel dédiés
-Système fermé, validé a priori
-Système réparti synchrone: commandes de vol, radars, moteurs, etc.
[email protected] - CEDRIC ( CNAM) -1414
Exemple 1: domaine de l’avioniqueExemple 1: domaine de l’avionique
•Dans un Airbus A340 [Boniol 1998]:
Il y a 115 équipements avec :
- 3 calculateurs qui élaborent les paramètres inertiels
- 2 calculateurs qui implémentent les lois de guidage
- 5 calculateurs qui implémentent les lois de pilotage
- 2 calculateurs d’alarmes, etc.
- Environ 200 000 données sont échangées
[email protected] - CEDRIC ( CNAM) -1515
Exemple 2: multimédia sur le WebExemple 2: multimédia sur le Web
•Système temps réel souple:
-Contraintes temporelles: gigue, délais de bout en bout, temps de réponse, etc.
-Synchronisations: intra et inter-flux
-Plateforme généraliste (ex. PC + Windows)
-Application interactive
-Débits variables et difficiles à estimer hors ligne.
processeur réseau processeur
[email protected] - CEDRIC ( CNAM) -1616
Exemple 3: Péage au centre de LondresExemple 3: Péage au centre de Londres
[email protected] - CEDRIC ( CNAM) -1717
Autres exemples d’applicationAutres exemples d’application
-Transports (métro, aérospatiale, automobiles, etc.).
-Médias (décodeurs numériques).
-Services téléphoniques (terminal GSM, auto-commutateur).
-Supervision médicale.
-Systèmes de production industrielle : centrale nucléaire, chaîne de montage,usine chimique, etc.
-Robotique (ex. PathFinder: sonde lancée par la NASA en mars 1996, composée d'une station au sol et d'un robot mobile Sojourner).
[email protected] - CEDRIC ( CNAM) -1818
Caractéristiques des applications temps réelCaractéristiques des applications temps réel
[email protected] - CEDRIC ( CNAM) -1919
Utilisation du temps concretUtilisation du temps concret
•Au sein d'une application ou d'un système temps réel, il faut pouvoirmanipuler le temps concret (horloge)
•Le temps réel (ou temps concret) sera utilisé de plusieurs façons:– Soit en définissant la date à laquelle une action doit être commencée– Soit en définissant la date à laquelle une action doit être finie
•Il peut être nécessaire de pouvoir modifier ces paramètres en coursd'exécution et de pouvoir préciser les actions à prendre en cas de fautetemporelle
[email protected] - CEDRIC ( CNAM) -2020
Découpage en tâchesDécoupage en tâches
•Dans le monde réel, l'environnement du système temps réel peut consisteren plusieurs actions qui évoluent simultanément (en parallèle ou en concurrence).
• Pour réduire la complexité de conception et calquer fidèlement la réalité, il faut utiliser la programmation concurrente :
– utiliser un modèle de tâches ou processus concurrents.
– utiliser des moyens de communication et de synchronisation inter-tâchesou inter-process (mémoire partagée, boîtes aux lettres, files de messages, moniteurs, etc.).
[email protected] - CEDRIC ( CNAM) -2121
Respect des contraintes temporellesRespect des contraintes temporelles
• La limitation des ressources (en particulier du processeur) conduit à bloquer des processus (ils ne peuvent progresser du fait du manque de ressource)
• Afin de respecter en permanence les échéances, il faut gérer efficacement la pénurie et tenter de favoriser les processus dont l'avancement est le plus « urgent »
• Un ordonnancement consiste à définir un ordre sur l'utilisation des ressources du système afin de respecter les échéances.
[email protected] - CEDRIC ( CNAM) -2222
OrdonnancementOrdonnancement
• On appelle ordonnanceur (scheduler), le processus système qui gèrel'ordonnancement des processus (tâches)
• Un algorithme d'ordonnancement est une méthode ou stratégie utiliséepour ordonnancer les processus (tâches)
• Un tel algorithme s'appuie sur la connaissance de certaines caractéristiques des processus (tâches) ou du système
– processus (tâches) périodiques ou apériodiques;– préemption possible ou non;– échéance et pire temps d'exécution des processus (tâches)– système à priorité fixe ou à échéanceetc.
[email protected] - CEDRIC ( CNAM) -2323
Algorithmes d’ordonnancementAlgorithmes d’ordonnancement
• Deux algorithmes classiques d'ordonnancement– RM (Rate Monotonic) : algorithme à priorité fixe pour tâchespériodiques (la tâche la plus prioritaire est celle de plus petite période)
– EDF (Earlest Deadline First) : algorithme à priorité dynamique pourtâches périodiques (la tâche la plus prioritaire est celle de plus petite échéance)
• L'ordonnanceur choisit d'exécuter la tâche prête de plus haute priorité
• Au sein d'une même classe de priorité, le choix peut se faire par temps partagé (Round Robin) ou par ancienneté (gestion FIFO)
[email protected] - CEDRIC ( CNAM) -2424
Cycle de vie d’une application temps réelCycle de vie d’une application temps réel
[email protected] - CEDRIC ( CNAM) -2525
Génie logiciel et temps réel/1Génie logiciel et temps réel/1
• Génie logiciel = méthodes, modèles et ateliers pour la conception mais aussipour maîtriser la qualité des produits, leur coût et le respect des délais.
• Spécificités des applications temps réel- Concurrentes et synchronisées- Manipulation du temps- Coût de développement très lourd (validation temporelle et logique, applicationspeu flexibles)- Maintenance souvent impossible (terminal GSM, sonde spatiale)- Conséquences tragiques (vies humaines, faillites économiques)
⇒ Utilisation de méthodes, outils (adaptés aux spécificités du temps réel) qui facilitent la conception et le développement.
[email protected] - CEDRIC ( CNAM) -2626
Spécification du logiciel
Codage/réalisationdu logiciel
Conceptiondu logiciel
Tests unitaires et intégration
du logiciel
Validation dulogiciel
Génie logiciel et temps réel/2Génie logiciel et temps réel/2
•Spécification=quoi faire? Conception= comment faire?•Notions de méthodes, modèles et outils•Couverture partielle ou totale du cycle. Cela dépend du domaine applicatif
[email protected] - CEDRIC ( CNAM) -2727
Méthodes de développement/1Méthodes de développement/1
• Méthodes fonctionnelles structurées- SA_RT : Structured Analysis Real Time [Pirbhai-Hatley 1986]- DARTS : Design Approach for Real-Time Systems [Gomaa 1984) ]- SDL : Specification and Description Language [CCITT 1988]etc.
• Méthodes orientées objet- UML : Unified Modeling Language [OMG 1995]- HOOD : Hierarchical Object Oriented Design [CRI-Cisi 1987]
• Méthodes orientées composant- KOALA : technologie composant développée par Philips pour
la conception de composants électroniques grand public [Ommering et al. 2002]
[email protected] - CEDRIC ( CNAM) -2828
Spécification du logiciel
Codage/réalisationdu logiciel
Conceptiondu logiciel
Tests unitaires et intégration
du logiciel
Validation dulogiciel
Méthodes de développement/2Méthodes de développement/2
SA-RTUML
DARTSHOOD
[email protected] - CEDRIC ( CNAM) -2929
Exemples industrielsExemples industriels
• Programme Spot4 (Matra Marconi Space/CNES)- satellite destiné à l’observation de la terre (météorologie, environnement, etc.)- Spécification et conception: HOOD- langages : Ada, Assembleur
• Programme SENIT8 (Dassault Électronique /DCN-Ingénierie)- équipements de gestion et contrôle commande du porte-avions Charles de Gaulle - Spécification et conception: SART et Ada-Buhr (proche de DARTS)- langages : Ada, C
• Programme Rafale (Dassault Électronique): avion militaire- Spécification et conception: SART et OMT- langages : Ada
[email protected] - CEDRIC ( CNAM) -3030
Méthodes de spécification et de conceptionMéthodes de spécification et de conception
[email protected] - CEDRIC ( CNAM) -3131
Spécifier: la méthode SARTSpécifier: la méthode SART
• SART = Structured Analysis Real Timespécification du logiciel
• Une spécification est constituée de :- Dictionnaire de données- Graphes de flots de données étendus par la notion d’événements- Diagrammes état-transition pour l’aspect dynamique du système
[email protected] - CEDRIC ( CNAM) -3232
Figure p.55 de [Cottet & Grolleau 2005]
La méthode SART : récapitulationLa méthode SART : récapitulation
[email protected] - CEDRIC ( CNAM) -3333
Concevoir: la méthode HOODConcevoir: la méthode HOOD
HOOD = Hierarchical Object Oriented Design (projet ESA (européen) vise àdéfinir une méthode de conception pour des applications spatiales )- spécification préliminaire et détaillée du logiciel
- 1987: CRI,CISI Ingéniérie, MATRA => HOOD 2.0 Reference Manual
- 1989 : HOOD 3.0 ref. manual
- Exemple : STOOD de la société TNI
[email protected] - CEDRIC ( CNAM) -3434
HOOD en quelques motsHOOD en quelques mots
• Objet: unité de modularité- encapsule données et opérations- encapsule aucun, un ou plusieurs flots de contrôle.- fournit une interface d'utilisation à ses utilisateurs
• Objets passifs- fournissent des opérations séquentielles, le flot de contrôle de l'utilisateur esttransféré à l'opération demandée
• Objets actifs- ont un état interne propre- ont leur propre comportement- fournissent à leurs utilisateurs des opérations "contraintes"
[email protected] - CEDRIC ( CNAM) -3535
Concevoir: UML temps réelConcevoir: UML temps réel
• UML = Unified Model Language
• Profile temps réel [OMG 2000]
- stéréotypes pour la gestion du temps
- stéréotypes pour l’analyse d’ordonnançabilité et la gestion des ressources
[email protected] - CEDRIC ( CNAM) -3636
Concevoir: Approche composantConcevoir: Approche composant
• Modèle composant temps réel- composant, interface offerte, interface requise, opérations, contraintes de temps, etc.- Types de composants: actif, passif, connecteur, composite- Événements extérieurs/communication
• Exemples : - KOALA : technologie composant développée par Philips pourla conception de composants électroniques grand public [Ommering et al. 2002]
- SAVEComp est une technologie basée sur le modèle SAVECCM destinéau développement du logiciel pour automobiles [Hansson et al. 2004].- TinyOS: système non temps réel mais embarqué dans les réseaux de capteur,
utilise le modèle composant.
[email protected] - CEDRIC ( CNAM) -3737
CMUGénération de code de liaison pour
l’interconnexion de composants préexistantsUniCon
HoneywellConception, validation et génération d’applications temps réel embarquées
(avionique)MetaH
StanfordModélisation et simulations du comportement
dynamique des architecturesRapide
ICLSystèmes massivement distribuésDarwin
CMUModélisation et analyse du comportement
dynamique des systèmes concurrentsWright
OrigineFocaliser versNom
Quelques ADLsQuelques ADLs
[email protected] - CEDRIC ( CNAM) -3838
• Proposé par l’«Object Management Group» (OMG)
– Permet la séparation des spécifications fonctionnelles du système des spécifications concernant son implantation sur plate-forme technologique quelconque
– Le principe du MDA tourne autour de modèles et de transformation de modèles.
Le Model-Driven Architecture (MDA)Le Model-Driven Architecture (MDA)
[email protected] - CEDRIC ( CNAM) -3939
• Supporte toutes les étapes du cycle de développement logiciel
– Des modèles sont créés à chaque phase de développement– Les passages entre les différentes phases se font à l’aide de projections
standardisées et automatiques.
Requirements
Analysis
Low-leveldesign
Coding
Testing
Deployment
CIM
PIM
PSM
CODE
CODE
CIM
PIM
PSM
CODE
3
1
2
4
5
Le processus MDALe processus MDA
[email protected] - CEDRIC ( CNAM) -4040
• PIM vers PIM
– Vise à enrichir, filtrer ou spécialiser le modèle sans nécessiter d’informations dépendantes d’une plate-forme
• PIM vers PSM
– Utilisé quand le PIM est suffisamment raffiné pour être projeté vers une plate-forme d’exécution
• PSM vers PSM
– Utilisé lors des phases de déploiement, d’optimisation, de reconfiguration ou lors de la génération du code
• PSM vers PIM
– Utilisé pour obtenir un modèle d’abstraction PIM à partir d’une implantation existante sur une plate-forme spécifique (reverse engineering)
• Difficilement réalisable
Les transformations de modèlesLes transformations de modèles
[email protected] - CEDRIC ( CNAM) -4242
Les approches formellesLes approches formelles
Objectifs
- Spécifier et/ou concevoir formellement un système- Valider des propriétés (ex. temporelles)- Génération de code pour effectuer des simulations- Dans le futur, être capable d’embarquer le logiciel
Spécification
Vérifier
Génération decode
Mise en œuvre
Simulation
[email protected] - CEDRIC ( CNAM) -4343
Les réseaux de PétriLes réseaux de Pétri
- Place, jeton, transition. Modèle à états- Validation logique, éventuellement temporelle- Étude du graphe d’états: vivacité (interblocage), respect d’invariant
(ex. exclusion mutuelle)
Prêt àdéposer
Placeslibres
Consommation
Production Placesoccupées
Prêt àconsommer
Fin deproduction
Fin de consommation
[email protected] - CEDRIC ( CNAM) -4545
Famille de langages possiblesFamille de langages possibles
• Trois sortes de langages peuvent être identifiés dans le contexte du développement d'applications temps réel
– les langages assembleurs
– les langages séquentiels liés à des librairies système
– les langages concurrents de haut niveau
[email protected] - CEDRIC ( CNAM) -4646
Les langages de type assembleurLes langages de type assembleur
• Historiquement, ces langages furent longtemps les seuls à être utilisésdans ce contexte
• Dépendant par nature de l'architecture cible (matériel et système)
• Aucune abstraction possible et grande difficulté de développement, demaintenance et d'évolution
-> Langages à proscrire sauf pour l'implémentation de petites fonctionnalités très spécifiques et apportant une grande amélioration des performances
[email protected] - CEDRIC ( CNAM) -4747
Les langages séquentielsLes langages séquentiels
• Introduits pour remédier aux problèmes dus au codage en assembleur
• Les plus connus sont le C, le C++ ou encore le Fortran
• Apporte un plus grand pouvoir d'abstraction et une certaine indépendance du matériel
• Mais, doit faire appel à des librairies systèmes spécifiques pour la manipulation des processus
-> Ces langages posent le problème de la standardisation des appels systèmes mais sont quelques fois le seul choix possible à cause de la spécificité d'une cible et des outils de développement sur celle-ci
[email protected] - CEDRIC ( CNAM) -4848
Les langages de haut niveauLes langages de haut niveau
• Langages généralistes incluant de plus la notion de tâches et des primitives de synchronisation
• Haut pouvoir d'abstraction, indépendance des architectures et des systèmes cibles (ou très peu dépendants)
• Parmi ces langages, Ada et Java temps réel sont des langages qui peuvent être utilisés à profit dans le développement d'applications/systèmes temps réel
-> Langages à privilégier lorsque d'autres contraintes (manque de formation,reprise de code existant, coopération inter-équipes/ ou inter entreprises, ...)ne rendent pas la chose impossible
[email protected] - CEDRIC ( CNAM) -4949
•Java comme exemple de langage concurrent de haut niveau
•C avec l'utilisation de bibliothèques système
•Java temps réel (jRate une implémentation de RTSJ :Real-TimeSpecification for Java, sous Linux)
Langages choisis dans ce coursLangages choisis dans ce cours
[email protected] - CEDRIC ( CNAM) -5050
Le choix d’un exécutif temps réelLe choix d’un exécutif temps réel
[email protected] - CEDRIC ( CNAM) -5151
•Caractéristiques d'un système d'exploitation
– approche généraliste
– supporte généralement plusieurs types d’applications simultanément
– interaction par appels système
– peu dépendant du domaine d'applications visé
– généralement de taille plus importante qu'un exécutif
Les systèmes d’exploitationLes systèmes d’exploitation
[email protected] - CEDRIC ( CNAM) -5252
•Caractéristiques d'un exécutif temps réel
– système spécialisé
– dédié à une application spécifique (ex. contrôle de trafic aérien)
– collection de primitives
-> plus spécialisé qu'un système d'exploitation, code de taille plus petite qu'un système classique
Exécutif temps réel/1Exécutif temps réel/1
[email protected] - CEDRIC ( CNAM) -5353
Procédé
CapteursActionneurs
Système decontrôle
Exécutif Temps Réel
(ordonnanceur, gestion desressources, des interruptions...)
tâches
Structure d’un noyau temps réel
Exécutif temps réel/2Exécutif temps réel/2
[email protected] - CEDRIC ( CNAM) -5454
•RTAI: basé sur du code libre, extension de Linux (http://www.aero.polimi.it/~rtai/index.html)
•Lynx-OS : système Unix à base de thread noyau(http://www.lynuxworks.com/) compatible avec Linux
•QNX : système Unix (http://www.qnx.com/)
•Windows CE : système Microsoft temps réel(http://www.cewindows.net)
•VxWorks : Exécutif de Wind river(http://www.windriver.com)
•VRTX : ( http://www.mentor.com/vrtxos/)
•RI/RTSJ (Machine virtuelle): Java TR de TimeSys(http://www.timesys.com/company/java.htm)
• jRate/RTSJ:http://linux.softpedia.com/get/Programming/Compilers/jRate-16990.shtml
Exemples d’exécutifs temps réelExemples d’exécutifs temps réel
[email protected] - CEDRIC ( CNAM) -5555
Les exécutifs temps réel les plus utilisésLes exécutifs temps réel les plus utilisés
Sondage effectué par Open Group en 2001 auprès de 10 000 utilisateurs
[email protected] - CEDRIC ( CNAM) -5656
•Les systèmes ou applications temps réel sont
– complexes
– font intimement intervenir le temps dans leur conception
– ont des besoins de fiabilité importants
– généralement décomposés en sous-systèmes avec des tâches ou desprocessus qui interagissent
– doivent être implémentés avec des langages appropriés
– doivent être exécutés sur des systèmes ou des exécutifs adaptés
ConclusionConclusion
[email protected] - CEDRIC ( CNAM) -5757
RéférencesRéférences
[ CRI-Cisi 1987]: HOOD Manual, CRI-Cisi Matra, Toulouse.[Boniol 1998]: Frédéric Bonio, « Une approche synchrone multi-formalismes pour la conception de systèmes temps-réel distribués », TSI 1998.[Cottet & Grolleau 2005]: F. Cottet & E. Grolleau, « systèmes temps réel de contrôle-commande : conception et implémnetation », Ed. Dunod, 2005, ISBN:2 10 007893 3.[Dorseuil & Pillot 1991] : Dorseuil A. et Pillot P., « le temps réel en milieu industriel », édition Dunod, collection informatique industrielle, 1991.[Duvallet et al. 1999]:C. Duvallet, Z. Mammeri et B. Sadeg, « Analyse des protocoles de contrôle de concurrence et des propriétés ACID dans les SGBD temps réel », Revue TSI, 1999.[Gomaa 1984) ]:Gomaa, Hassan, “A Software Design Method for Real-Time Systems,” Communications of the ACM, Sept., 1984 [Hansson et al. 2004]:H. Hansson, M. Akerholm, I. Crnkovic & M. Törngren, "SaveCCM: a component model for safety-critical real-time systems", EuroMicro Conference, Special Session Component Models for Dependable Systems, Rennes, France, Sept. 2004.[Jaulent 1994]:P. Jaulent, « Génie Logiciel: les méthodes », Armand Colin, 1994.Jean-François Peyre, supports de cours sur l’informatique industrielle-systèmes temps réel, CNAM(Paris).Frank Singhoff, supports de cours sur le temps réel, département informatique, université de Bretagne Occidentale (http://beru.univ-brest.fr/~singhoff/supports.html).[Ommering et al. 2000]:R. Van Ommering, F. Van der Linden & J. Kramer, "The Koala component model for consumer electronics software", IEEE Computer, Vol. 33, N° 3, pp. 78-85, March 2000.[Pirbhai-Hatley 1987]: D. J. Hatley, I. A. Pirbhai: Strategies for Real-Time System Specification; Dorset House, New York, 1987. RTSJ: http://www.rtsj.org/[Stankovic 1988]:John Stankovic, « Misconceptions about real-time computing », IEEE Computer, oct. 1988.