Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev - Génie logiciel1 La conception de logiciel temps réel
B.Shishedjiev - Génie logiciel2 Définition Un système qui surveille et gère son environnement. Le temps de réaction est critique. Il est liée toujours avec certain matériel: –Capteurs –Actionneur Le SRT comme un système de stimulus - réaction –Stimulus périodique –Stimulus apériodique
B.Shishedjiev - Génie logiciel3 Exigences vers larchitecture Particularités –Changer les processus traitant les stimuli –Chaque stimulus peut exiger un temps différent de réponse – la boucle simple nest pas approprié –Une architecture est des processus coopératifs gérés par un composant temps réel –Utilisation dun langage bas niveau comme C mais il ne support pas les processus concurrents ( on doit appeler composants du système dexploitation) Utilisation de Java – problèmes: –On ne peut pas spécifier le temps dexécution des fils –Le collecteur dordures ne peut pas être controllé –On ne peut pas voir les tailles des files associées aux ressources partagés. –Le JVM varie est le comportement du programme sera différent aux ordinateurs différents. –On ne peut pas accéder le matériel directement.
B.Shishedjiev - Génie logiciel4 Modèle dun système temps réel Real-time control system ActuatorActuatorActuatorActuator Sensor
B.Shishedjiev - Génie logiciel5 Conception du système Identification des stimuli and les réponses correspondantes Les contraintes de temps Choisir la plateforme de système –Matériel –Logiciel Agréger les stimuli et les réponses en processus concurrents
B.Shishedjiev - Génie logiciel6 Conception du système Pour chaque pair concevoir lalgorithme pour les calculs nécessaires Concevoir le système de planification des processus Intégrer avec un système dexploitation temps réel Les besoins non fonctionnels sont plus importants – notamment les contraintes de temps.
B.Shishedjiev - Génie logiciel7 Le processus de gestion de stimuli/réponses Data processor Actuator control Actuator Sensor control Sensor Stimulus Response
B.Shishedjiev - Génie logiciel8 Modèles des systèmes temps réel Modèle détats –Utile –Il ne donne pas la structure –Il ne modèle quune fonction du système à la fois
B.Shishedjiev - Génie logiciel9 Modèles des systèmes temps réel Diagramme des états – pompe dessence
B.Shishedjiev - Génie logiciel10 Système dexploitation temps réel Objectif Composants –Horloge –Gestionnaire d'interruption –Planificateur –Gestionnaire des ressources –Dispatcher Composants permanents –Gestionnaire de configuration –Fault Manager
B.Shishedjiev - Génie logiciel11 Composants de SE temps réel
B.Shishedjiev - Génie logiciel12 Gestion des processus Priorité des processus –Niveau dinterruption –Niveau des processus périodiques –Autres Desservir les interruptions –Le contrôle est transmis à une location prédéfinie où se trouve une instruction vers la procédure traitante. –Tous les autre interruption sont désactivées. Puis le contrôle est retourné vers le processus interrompu. –Le service doit être court et rapide.
B.Shishedjiev - Génie logiciel13 Gestion des processus Gestion des processus périodiques –Propriétés Période Durée dexécution et delais Priorité –Lhorloge génère les interruptions pour la planification des processus périodiques –Le gestionnaire choisi le processus qui est prêt à exécuter
B.Shishedjiev - Génie logiciel14 Gestion des processus Commutation des processus –Planificateur –Gestionnaire des ressources –Dispatcher
B.Shishedjiev - Génie logiciel15 Gestion des processus Stratégies de planification –Planification non préemptive – le processus ne peut être interrompu que par la fin ou une opéretion entrée/sortie –Planification préemptive – interruption par un processus plus prioritaire –Algorithmes Round-robin Taux monotone Le délais le plus court
B.Shishedjiev - Génie logiciel16 Les systèmes de surveillance et de contrôle Architecture générique
B.Shishedjiev - Génie logiciel17 Système d'alarme contre le vol Besoins –Quand il y a un voleur le système doit allumer les lampes et appeler la police –Il doit marcher avec un source délectricité autonome Capteurs –Capteur de mouvement, de choc, douverture de fenêtre et de porte. –Capteur de voltage Actionneurs –Appel à la police –Allumer les lampes –Brancher une sirène –Commuter à un source autonome quand le courrant est coupé
B.Shishedjiev - Génie logiciel18 Système d'alarme contre le vol Conception du système –Stimuli Panne de courant Alarme dintrusion
B.Shishedjiev - Génie logiciel19 Système d'alarme contre le vol Stimulus/réponseTiming requirements Panne de courant Le passage à une alimentation de secours doit être achevée dans un délai de 50 ms. Alarme de porteChaque alarme de porte doit être interrogé deux fois par seconde. Alarme de fenêtreChaque alarme de fenêtre doit être interrogé deux fois par seconde Capteur de mouvementChaque détecteur de mouvement doit être interrogé deux fois par seconde. Alarme sonore L'alarme sonore doit être allumé à moins de 1 / 2 seconde d'une alarme est soulevée par un capteur. Lumières s'allumentLes lumières devraient être allumés dans les 1 / 2 seconde d'une alarme est soulevée par un capteur. Communications L'appel à la police devrait commencer dans les 2 secondes d'une alarme est soulevée par un capteur Synthétiseur de voix Un message synthétisé devrait être disponible dans les 4 secondes d'une alarme est soulevée par un capteur.
B.Shishedjiev - Génie logiciel20 Processus du Système d'alarme Lighting control process Audible alarm process Voice synthesiser process Alarm system process Power switch process Building monitor process Communication process Door sensor process Movement detector process Window sensor process 560 Hz 400 Hz100 Hz Power failure interrupt Alarm system Building monitor Alarm system Alarm system Alarm system Detector statusSensor statusSensor status Room number Alert message Room number Room number
B.Shishedjiev - Génie logiciel21 Système de contrôle Système de contrôle de la température Thermostat process Sensor process Furnace control process Heater control process 500 Hz 5 Thermostat process 500 Hz Sensor values Switch command Room number
B.Shishedjiev - Génie logiciel22 Systèmes d'acquisition de données Objectif –Collecter des données pour un analyse et traitement postérieur Propriétés –La collection et beaucoup plus rapide que le traitement –On doit organiser une file dattente pour les données – tampon circulaire
B.Shishedjiev - Génie logiciel23 Systèmes d'acquisition de données Architecture
B.Shishedjiev - Génie logiciel24 Collection de données dun réacteur nucléaire Objectif – suivre le flux de neutrons dun réacteur Architecture –Un tampon circulaire –Deux processus concurrents Écrire Lire Les deux processus ne doivent accéder le même élément
B.Shishedjiev - Génie logiciel25 Le flux de neutrons Operator display Flux processing Flux data buffer A-D convertor Sensor identifier and flux value Processed flux level Neutron flux sensors
B.Shishedjiev - Génie logiciel26 Le flux de neutrons Tampon circulaire Consumer process Producer process