702 research outputs found

    Traçabilité d'exigences temporelles dans l'outil UML/SysML TTool

    Get PDF
    La démonstration proposée concerne la traçabilité d'exigences tout au long du cycle de développement d'un système temps-réel, potentiellement distribué. L'outil TTool, basé sur un profil UML2, permet de saisir les exigences au format SysML, puis de confronter, par utilisation de techniques de vérification formelle, ces exigences aux diagrammes UML du système

    Compilation de systèmes temps réel

    Get PDF
    I introduce and advocate for the concept of Real-Time Systems Compilation. By analogy with classical compilation, real-time systems compilation consists in the fully automatic construction of running, correct-by-construction implementations from functional and non-functional specifications of embedded control systems. Like in a classical compiler, the whole process must be fast (thus enabling a trial-and-error design style) and produce reasonably efficient code. This requires the use of fast heuristics, and the use of fine-grain platform and application models. Unlike a classical compiler, a real-time systems compiler must take into account non-functional properties of a system and ensure the respect of non-functional requirements (in addition to functional correctness). I also present Lopht, a real-time systems compiler for statically-scheduled real-time systems we built by combining techniques and concepts from real-time scheduling, compilation, and synchronous languages

    Nouvelle approche TURTLE pour le dimensionnement et la validation de systèmes répartis temps réel

    Get PDF
    Le profil UML temps réel TURTLE supporté par l'outil open-source TTool offre un cadre formel pour la modélisation et la vérification formelle de systèmes temps réel communicants. Cet article ajoute à la méthode TURTLE un volet "calcul réseau" adapté au traitement des systèmes temps réel répartis à large échelle. Ce volet permet de dimensionner le réseau en prenant en compte les trafics des différents n\oe uds, puis d'injecter les résultats de dimensionnement dans les modélisations TURTLE. Cette approche permet au niveau des modèles TURTLE de n'explorer le système que pour un nombre réduit de nœuds du système réparti. Un système de vidéo-conférence au sein d'un campus universitaire sert d'étude de cas

    Ordonnancement temps réel et minimisation de la consommation d'énergie

    Get PDF
    La consommation en énergie est devenue un problème crucial dans la conception des équipements électroniques dont l'alimentation est assurée par des batteries. Parmi tous les composants électroniques, le processeur est particulièrement utilisateurs d'énergie puisque des études ([POU 01, ZEN 02] cités dans [AYD 04]) ont montré qu'il pouvait à lui seul utiliser plus de 50 % de l'énergie lorsqu'il était sollicité intensivement. En jouant sur une réduction de la fréquence de fonctionnement du processeur, des stratégies d'ordonnancement adaptées permettent de réduire considérablement la consommation énergétique. Nous proposons dans ce chapitre un tour d'horizon, dans le cas mono-processeur, des techniques d'ordonnancement visant à minimiser la consommation d'énergie tout en garantissant le respect de contraintes d'échéances. Les contraintes de temps peuvent peser explicitement sur certaines activités du système ou peuvent provenir de contraintes de performances minimales si l'on sort du cadre classique des systèmes temps réel. Le problème d'ordonnancement à résoudre consiste non seulement à déterminer l'ordre dans lequel exécuter les activités du système mais également à fixer la fréquence de fonctionnement du processeur au cours du temps. Comme souligné dans [GRU 02], l'ordonnancement sous contrainte d'énergie acquiert une nouvelle dimension qui est la vitesse du processeur

    PRISE : une plate-forme de simulation distribuée pour l’ingénierie des systèmes embarqués

    Get PDF
    Dans cet article, nous présentons PRISE, une Plate- forme pour la Recherche en Ingénierie des Systèmes Embarqués, développée à l’ISAE, l’Institut Supérieur de l’Aéronautique et de l’Espace. PRISE est bâtie sur des technologies modernes axées sur l’ingénierie des systèmes aéronautiques et spatiaux. Ses objectifs sont, d’une part, de modéliser et de valider les aspects importants des systèmes critiques embarqués temps réel, d’autre part de valider de nouvelles approches scientifiques. Pour atteindre ces objectifs, PRISE combine un ensemble d’outils, de méthodes en ingénierie système (modélisation, validation, génération de code) et une plate-forme d’exécution basée sur la simulation distribuée et sur un ensemble de systèmes embarqués réels

    Analyse de systèmes temps-réel par traçage

    Get PDF
    Résumé Le traçage est une technique qui permet de récupérer de l'information très précise sur l'exécution d'un système avec un impact minime. Afin de mieux comprendre l'exécution d'une application, la technique habituelle consiste à y attacher un débogueur et interrompre l'application, afin d'inspecter la valeurs de certaines variables, par exemple. Cette approche est mal adaptée aux applications qui ont des interactions fréquentes avec le système lui-même ou avec d'autres applications. Les applications temps réel sont un type d'application qui possède ce genre d'interactions. L'aspect temporel de leur exécution rend l'utilisation d'un débogueur inutile dans plusieurs cas. L'impact minimal du traçage sur l'exécution d'une application lui confère un atout important pour mieux comprendre les interactions complexes qui peuvent agir au sein d'un système temps réel. Afin de minimiser l'impact de l'instrumentation, il est souhaitable de réduire la quantité d'information récupérée. Il est donc important de bien identifier l'information minimale nécessaire à l'analyse, qui ne causera pas de latences indues. Dans un même ordre d'idées, le traceur ne peut pas se permettre d'effectuer un traitement coûteux avant l'enregistrement des informations. Les événements récupérés devront donc contenir une information brute sur l'exécution du système. L'objectif de cette recherche est de montrer que l'information récupérée lors du traçage d'un système temps réel peut être utilisée pour extraire de l'information permettant de mieux comprendre des comportements propres aux systèmes temps réel. L'hypothèse de ce travail est que le traçage permet de récupérer de l'information sur l'exécution d'une application temps réel et que les informations de traçage ainsi récupérées peuvent être utilisées pour diagnostiquer des problèmes difficilement observables. Nous étudions d'abord les différents outils de traçage en fonction de leurs fonctionalités et de leur impact sur les systèmes temps réel. Ensuite, nous comparons les différents outils d'analyse de trace selon deux grandes catégories: les approches algorithmiques et les techniques de visualisation. Des problèmes typiques des applications temps réel sont initialement identifés et serviront de base pour guider notre recherche. Un algorithme est développé afin d'analyser la trace et retrouver ces problèmes typiques. L'algorithme est testé sur des traces générées à partir de cas de tests et sa performance sera évaluée. La première contribution de ce travail consiste en la mise au point d'un algorithme permettant de générer un modèle à haut niveau d'une application temps réel à partir de la trace de son interaction avec le noyau du système d'exploitation. Ce modèle utilise la sémantique particulière des événements afin de produire une machine à états simple et rapide. Les événements nécessaires et minimaux à l'analyse sont identifiés de façon à limiter l'impact du traçage sur l'application. La deuxième contribution consiste en l'élaboration d'un outil de visualisation permettant de comparer directement les différentes phases d'exécution d'une application temps réel. Cet outil utilise le modèle généré à partir des informations de traçage afin d'identifier les différentes phases et d'extraire plusieurs statistiques utiles à la compréhension globale de l'exécution. Finalement, une structure de stockage des statistiques est améliorée de façon à récupérer efficacement des statistiques qui évoluent de façon continue dans le temps. Le résultat final est un outil qui permet de diagnostiquer les problèmes des applications temps réel grâce aux informations contenues dans une trace noyau, en plus de faciliter la découverte de patrons d'intérêt.----------Abstract Tracing is a technique to gather precise information about the execution of a system with minimal impact. In order to better understand the execution of an application, the usual technique consists in attaching a debugger and interrupting the application, to inspect the value of certain variables, for example. This approach is ill-suited for applications that are tightly coupled with the system itself. Real-time applications are a type of applications that exhibit this sort of interactions. The temporal aspect of their execution nullifies the use of a debugger. The low impact of a tracer on the execution of an application is therefore an important aspect providing better understanding of complex interactions in real-time systems. Even then, it is important to minimize even further the impact of tracing by reducing the amount of gathered information. It is therefore important to identify the minimal information that is necessary for the analysis that will not cause undue latency. Similarly, the tracer cannot afford complex processing while collecting the information. It must write the raw events as fast as possible. The objective of this research is to show that the information gathered during the tracing of a real-time system can be used to extract additional information that can be used to better understand the behaviour of real-time systems. We will first study the different tracing tools according to their functionalities and impact on real-time systems. Then, we will compare different trace analysis tools according to two main categories : algorithmic approaches and visualization techniques. Typical real-time application problems will be identified and used as a baseline to guide our research. An algorithm will then be developed to analyse the trace and find these typical problems. The algorithm will be tested on traces generated from test cases and its performance evaluated. The hypothesis of this work is that tracing allows gathering information about the execution of real-time applications and that this tracing information can be used to diagnose problems that are otherwise difficult to observe. The result of this work is the creation of a model allowing the extraction of statistics and the generation of visualizations from kernel traces gathered on a real-time system. This model uses event semantics to produce a finite-state machine that is both simple and fast. The minimal and necessary events for the analysis are identified in order to limit the impact of tracing on the application. Finally, a statistics storage structure is improved in order to retrieve efficiently statistics that are continuously variable through time. The final result is a tool to diagnose real-time application problems using the information stored inside a kernel trace and aid in the discovery of interesting patterns

    Sémantique compositionnelle et raffinement de systèmes temporisés : application aux automates temporisés d'UPPAAL et au langage FIACRE

    Get PDF
    Les systèmes temps-réel sont massivement impliqués dans de nombreuses applications, dont notre vie dépend comme les logiciels embarqués dans les voitures et les avions. Pour ces systèmes des erreurs inattendues ne sont pas acceptables. De ce fait, assurer la correction de ces systèmes est une tâche primordiale. Les systèmes temps-réel représentent un large spectre de systèmes automatisés dont la correction dépend de la ponctualité des événements (timeliness) et pas seulement de leurs propriétés fonctionnelles. Chaque événement doit être produit selon la date indiquée par la spécification du système. Les systèmes temps-réel sont concurrents et embarqués, et conçus comme un assemblage de composants en interaction. Malgré les progrès réalisés dans les techniques de model checking, la vérification et l'analyse des systèmes temps-réel représentent toujours un défi autant pour les chercheurs que les praticiens. Pour étudier le comportement des systèmes temps-réel, différents formalismes ont été considérés comme les automates temporisés, les réseaux de Petri temporisés et les algèbres de processus. Cela donne lieu à plusieurs points délicats concernant le raffinement, la composition et la vérification. Ces points représentent un champ de recherche intensif. Ma thèse présente une étude des systèmes temps-réel focalisée sur les notions de sémantique, de composition et de raffinement. Elle décrit nos efforts pour explorer et étendre les formalismes temps-réel. Nous avons abordé les concepts de base de la modélisation des systèmes temps réel tels que les variables partagées, la communication, les priorités, la dynamicité, etc. La contribution de cette thèse porte sur la définition d’un cadre formel pour raisonner sur la sémantique, la composition et le raffinement des systèmes temporisés. Nous avons instancié ce cadre pour le formalisme des automates temporisés et le langage Fiacre.Nowadays, real-time systems are intensively involved in many applications on which our life is dependent, like embedded software in cars and planes. For these systems unexpected errors are not acceptable. Real-time systems represent a large spectrum of automated systems of which correctness depends on the timing of events (timeliness) and not only on their functional properties. Each event must be produced on time. Realtime systems can be concurrent and embedded where different interactive modules and components are assembled together. Despite advances in model checking techniques, the verification and analysis of real-time systems still represent a strong challenge for researchers and practitioners. To study the behavior of real-time systems, different formalisms have been considered like timed automata, time Petri nets and timed algebra, and several challenges concerning refinement, composition and verification have emerged. These points represent an intensive field of research. This thesis describes our effort to explore and extend real-time formalisms. We have revisited real-time language semantics, focusing on composition and refinement. We have addressed high level concepts like shared variables, communication, priorities, dynamicity, etc. The main contribution consists of a theoretical study of timed systems where we establish a framework for reasoning on composition, refinement and semantics. We instantiate this framework for timed automata and the Fiacre language

    Vérification d'exigences d'un modèle SysML

    Get PDF
    Vérification formelle du modèle SysML du pacemaker qui sert d'étude de cas au long de l'ouvrage

    Adaptabilité et reconfiguration des systèmes temps-réel embarqués

    Get PDF
    Les systèmes temps réel peuvent être grands, distribués et avoir un environnement dynamique. Cela exige la mise en place de différents modes de fonctionnement et techniques de fiabilité. Par ailleurs, ces différents changements dynamiques d'architecture et de comportement ont un impact sur les caractéristiques temporelles des systèmes qui nécessitent une étude particulière de la capacité des comportements d'adaptation à garantir les contraintes fixées aux systèmes. Le travail présenté dans cette thèse est focalisé sur la spécification de l'adaptabilité d'un système temps réel et l'étude sur de jeux de configurations prédéfinis de l'impact temporel des actions d'adaptation dynamique. Pour cela, nous présentons une méthodologie outillée basée sur la notion de Mode du profil MARTE. Chaque mode représente un comportement possible du système pour un environnement bien déterminé associé à une configuration logicielle. L'approche développée propose de modéliser le comportement adaptatif à travers la définition du contexte, de la variabilité, des opérations de reconfigurations et de la configuration de base. L'analyse d'ordonnançabilité est ensuite effectuée au niveau du modèle en intégrant l'impact des comportements d'adaptation. Deux paradigmes de modélisation peuvent alors être exploités pour effectuer cette analyse : les requêtes et les flots de données. Cela permet de vérifier que les contraintes temporelles de notre système resteront satisfaites en intégrant les opérations de reconfiguration issues du comportement adaptatif. Enfin, l'approche permet de générer des implantations des comportements adaptatifs à partir des modèles afin d'automatiser l'intégration des mécanismes d'adaptation dans les systèmes temps réel.Real-time systems can be large, distributed and have a dynamic environment. This requires the introduction of various operating modes and reliability techniques. Different operating modes are associated with a different architecture and behavior. Dynamic changes between these modes have an impact on the temporal characteristics of systems which requires an analysis whether the constraints of the system are also fulfilled during adaptations. The work presented in this thesis is focused on specifying the adaptability and the study of the temporal impact of dynamic adaptation actions on a predefined set of configurations. For this purpose, we present a tooled methodology based on the concept of Mode of the MARTE profile. Each mode represents a possible behavior of the system for a well determined environment associated with a software configuration. The influence of these operations on the temporal behavior of the system is done via schedulability analysis. This methodology proposes to model the adaptive behavior through the definition of the context, the variability, the reconfiguration operations and of the base configuration. The schedulability analysis is performed at the model level by incorporating the impact of the behavior of adaptation. Two paradigms of modeling can be exploited to perform this analysis: request/reply and data flow. This allows to verify that the temporal constraints of our system will remain satisfied even with the inclusion of reconfiguration operations executing the adaptive behavior. Finally, the approach allows generating the implementation of adaptive behavior from the model to automate the integration of adaptation mechanisms in real-time systems.PARIS11-SCD-Bib. électronique (914719901) / SudocSudocFranceF

    Exemples de systèmes temps réel et choix d'implémentation

    Get PDF
    Ce chapitre présente les concepts de base liés aux systèmes temps réel. Après avoir illustré la problématique correspondante au travers d'exemples variés, il introduit les concepts techniques développés dans les chapitres suivants en se focalisant sur l'importance du choix d'implémentation des systèmes
    • …
    corecore