Upload
liliane-prevost
View
119
Download
0
Embed Size (px)
Citation preview
Systèmes en temps réel
Introduction Aux
Systèmes en temps réel
Introduction - 2
Synopsis
Définitions
Applications des systèmes d’ordinateur en
temps réel
Cycles de vie
Méthodologies
Outils
Introduction - 3
Définitions
Systèmes en temps réel:
“Un système en temps réel est un système logiciel qui maintient une interaction constante et ponctuelle avec son environnement”
Bran Selic
Introduction - 4
Définitions (continue)
Systèmes en temps réel:“Nous pouvons penser aux systèmes
en temps réel comme ceux qui réagissent aux entrées externes et qui de façon ponctuelle affectent l’environnement dans laquelle ils opèrent”
Introduction - 5
Définitions (continue)
Systèmes en temps réel:“ …tout système dont le temps
auquel les sorties sont produites est significatif. Ceci est habituellement due au fait que les entrées correspondent à quelques mouvements dans le monde physique, et les sorties doivent relater à ces mêmes mouvements.”The Oxford Dictionary of Computing
Introduction - 6
Définitions (continue)
Caractéristiques communes à toutes ces définitions
ponctualité ponctualité = véracité
interaction avec l’environnement interfaces matériels
Introduction - 7
Définitions (continue)
Est-ce que tout les systèmes d’ordinateur sont des systèmes à temps réel
bien que tout les logiciels interfacent avec le matériel, la programmation Windows, Icônes, Menus et Pointeurs (WIMP) n’est pas considérée comme en temps réel
?
Introduction - 8
Définitions (continue)
Temps réel dure versus mou Les systèmes en temps réel dure exigent que des
échéanciers stricts soient atteints; les plus stricts exigent qu’un événement se produise au temps x, pas seulement par le temps x.
Dans les systèmes en temps réel mou la ponctualité dans les événements est importante, mais pas nécessairement critique.
Souvent exprimé comme: x de y événements à temps, ou
par le temps x ± variance
Introduction - 9
Définitions (continue)
Temps réel versus logiciel embarqué La majorité du logiciel en temps réel est
“embarqué” à l’intérieur d’un système, et est habituellement de facto le système nerveux central.
Donc bien souvent, temps réel et embarqué sont souvent utilisés comme synonymes lorsque l’on réfère au logiciel en temps réel.
Introduction - 10
Applications of real-time systems
Contrôle de processus Centrale nucléaire
Contrôle de production Ligne de production d’automobile
Communication, commandement & contrôle Système de contrôle de l’espace aérien
Systèmes embarqués Receveur d’ondes satellite TV
Introduction - 11
Cycles de vie des systèmes en temps réel
Petites applications commerciales embarquées Typiquement appelées ‘one-shot’
Déploie et (espère d’) oublier
Grand multiples Requis d’efficacité poussé par les coûts
Introduction - 12
Cycles de vie (continue) Les systèmes en temps réel à grande
envergure * inclus la majorité des systèmes militaires médical
Généralement sujet aux changements constants
Très long cycle de vie Dispendieux à entretenir Les design robustes est critique
* Le sujet de ce cours
Introduction - 13
Méthodologies
Un historique (très) simplifié Organigrammes (flowcharts) Sous-routines (fonctions & procédures) Programmation structurée OOAD / UML 1.x ROOM / RT-UML UML 2.0
Introduction - 14
Méthodologies (continue)
Modélisation en temps réel orientée object Real-time Object-Oriented Modeling (ROOM) Une méthode pour modéliser et exécuter des
systèmes en temps réel à grande échelle Origine de Nortel pour la spécification et le
design des systèmes d’aiguillage téléphonique ROOM + UML => UML 1.3 (sémantique temps-
réel) UML 2.0
Disponible avec outils CASE maintenant
Incorpore beaucoup du ROOM
Introduction - 15
Outils
ObjecTime Developer Basé sur ROOM (pas UML) Modèles basés sur les objects actifs - “actors” Supporte l’exécution du modèle à tous les stages
simulation exécutable (Rapid Prototyping Language (RPL)) cible exécutable (C, C++)
Avec “ l’achat ” d’ObjecTime par Rational Développeur devient RoseRT
Avec “ l’achat ” de Rational par IBM RoseRT devient Rational Technical Developer
Introduction - 16
Outils(continue)
RoseRT* Basé sur UML Utilise les stéréotypes pour la sémantique
spécifique au domaine Supporte le processus Unified
(développement du logiciel) Encourage la rapidité des versions
exécutables “micro-cycle”
Translation versus élaboration* La version courante au CMR est encore RoseRT et non Technical Developer
Introduction - 17
Outils(continue)
Rhapsody par I-Logix Tau Developer par Telelogic Real-Time Studio par Artisan Visual Paradigm
Tous basés sur la norme UML Tous encourage la rapidité des versions exécutables Presque tous translatifs (vs élaboration)
Il y a des alternatives!! Le CMR n’est pas dans la business de
“vendre” des outils spécifiques
Introduction - 18
Sommaire
“Le design des application distribuées en temps réel s’est avéré à être un des problèmes les plus compliqués et difficiles à résoudre. Ceci est due à prime abord à la complexité du monde réel où ces systèmes évoluent. Leurs environnements peuvent être incroyablement diverse, dynamique et imprédictible – les composantes faillissent aléatoirement, les communications sont corrompus, les interruptions se produisent au moments les moins opportuns, et ainsi de suite.”
livre sur ROOM