• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 5
  • 4
  • 1
  • Tagged with
  • 10
  • 10
  • 5
  • 5
  • 5
  • 4
  • 3
  • 3
  • 3
  • 3
  • 3
  • 3
  • 3
  • 3
  • 2
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
1

Un modèle réactif basé sur MARTE dédié au calcul intensif à parallélisme de données : transformation vers le modèle synchrone / A MARTE based reactive model for data paralllel intensive processing : transformation toward the synchronous model

Yu, Huafeng 27 November 2008 (has links)
Le contexte de ce travail est l'assistance à la conception de systèmes embarqués, et particulièrement de Systems on Chip (SoC). Les domaines d'application concernés sont variés: avionique, téléphones portables, automobile. La complexité de ces systèmes, et leur interaction forte avec leur environnement, posent des problème de maîtrise de la conception (pour éviter les détections d'erreurs tardives, les diagnostics et réparations coûteux en moyens, mais aussi en temps de mise sur le marché), et de validation ou certification pour les systèmes à sûreté critique (qui doivent être vérifiés avant leur mise en service). Il s'en suit un fort besoin de méthodes et d'outils pour assister la conception sûre de ces systèmes, qui prennent la forme de méthodologies et de modèles à base de composants, de langages de spécification de haut niveau, d'outils de transformation et compilation, d'analyse et de vérification, de synthèse et génération de code. Dans ce contexte, une contribution est une proposition d'un modèle intermédiaire entre les systèmes de calculs dans le cadre du parallélisme de données intensif et les langages formels. Ce modèle intermédiaire permet la génération du code en langages formel à partir de ces systèmes dans le cadre ingénierie dirigé par les modèles. La validation formelle et l'analyse statique est donc possible sur la base du code généré. Une autre contribution est une proposition de mécanismes de contrôle dans le même cadre, sous forme de constructeurs de langage de haut-niveau et de leur sémantique. On veut les définir pour leur exploitation dans la vérification, synthèse et génération de code. Il s'agit de déterminer un niveau d'abstraction de représentation des systèmes où soit extraite la partie contrôle, et de la modéliser sous forme d'automates à états finis. Ceci permet de spécifier et implémenter des changements de modes calculs, qui se distinguent par exemple par les ressources utilisées, la qualité du service fourni, le choix d'algorithme remplissant une fonctionnalité. Cette abstraction est alors favorable à l'application d'outils d'analyse et vérification (de type model checking). On s'intéressera aussi à l'utilisation de techniques de synthèse de contrôleurs discrets, qui peut assurer la correction de façon constructive: à partir d'une spécification partielle du contrôle, elle calcule la partie manquante pour que les propriétés soient satisfaites. L'avantage pour le développement de la partie contrôle est dans la simplification de la spécification, et la correction par construction du résultat. Ce travail se fera en articulation avec des travaux déjà commencés sur la proposition d'une méthodologie de séparation contrôle/donnée! de mécanismes de contrôle, et leur intégration dans l'environnement de conception de systèmes à parallélisme de données intensif Gaspard. On travaillera dans le cadre des modèles de systèmes réactifs proposés par l'approche synchrone, de ses langages de programmation à base d'automates, et de ses outils académiques et commerciaux. En étude de cas, on s'intéressera à des applications en systèmes embarqués téléphone portable multimédia. / The work presented in this dissertation is carried out in the context of System-on-Chip (SoC) and embedded system design, particularly dedicated to data-parallel intensive processing applications (DIAs). Examples of such applications are found in multimedia processing and signal processing. On the one hand, safe design of DIAs is considered to be important due to the need of Quality of Service, safety criticality, etc., in these applications. However, the complexity of current embedded systems makes it difficult to meet this requirement. On the other hand, high-Ievel safe control, is highly demanded in order to ensure the correctness and strengthen the flexibility and adaptivity of DIAs. As an answer to this issue, we propose to take advantage of synchronous languages to assist safe DIAs design. First, a synchronous modeling bridges the gap between the Gaspard2 framework, which is dedicated to SoC design for DIAs, and synchronous languages that act as a model of computation enabling formal validation. The latter, together with their tools, enable high-Ievel validation of Gaspard2 specifications. Secondly, a reactive extension to a previous control proposition in Gaspard2, is also addressed. This extension is based on mode automata and contributes to conferring safe and verifiable features onto the previous proposition. As a result, model checking and discret controller synthesis can be applied for the purpose of correctness verification. Finally, a Model-Driven Engineering (MDE) approach is adopted in order to implement and validate our proposition, as well as benefit fron the advantages of MDE to address system complexity and productivity issues. Synchronous modeling, MARTE-based (the UML profile fo Modeling and Analysis of Real-Time and Embedded system) control modeling, and model transformations, including code generation, are dealt with in the implementation.
2

Vérification et synthèse de systèmes réactifs

Lesens, David 05 September 1997 (has links) (PDF)
Cette thèse a pour cadre la vérification des systèmes réactifs de grande taille. Les systèmes réactifs sont des systèmes informatiques qui réagissent continûment à leur environnement physique, à une vitesse déterminée par cet environnement. Ils sont particulièrement utilisés dans le cadre du contrôle des systèmes critiques : transport, nucléaire, commande de processus industriels, communication... De par leur fonction, ils doivent impérativement satisfaire des contraintes strictes de fonctionnement. La vérification des systèmes réactifs de grande taille peut être effectuée en décomposant modulairement le programme. Des algorithmes de synthèse sont proposés, qui permettent de déterminer les sous-programmes les plus généraux, tels que le système complet satisfasse une propriété donnée. La vérification modulaire a été étendue aux cas des réseaux paramétrés de processus. L'utilisation d'observateurs synchrones permet de spécifier des propriétés sur un nombre quelconque de processus. La technique proposée consiste alors à exprimer un invariant de ce réseau à l'aide d'un plus petit ou d'un plus grand point fixe, et d'utiliser des techniques d'extrapolation pour en calculer une approximation régulière. Les cas des réseaux linéaires (ou en anneau) et des réseaux arborescents ont particulièrement été étudiés. L'ensemble des techniques et des algorithmes développés ont été implémentés dans un outil : a Boolean Automaton Network Grammar checker.
3

De la sémantique opérationnelle à la spécification formelle de compilateurs: l'exemple des boucles en Esterel

Tardieu, Olivier 24 September 2004 (has links) (PDF)
Esterel est un langage impératif concurrent pour la programmation des systèmes réactifs. A l'exception de l'instruction "pause", les primitives du langage s'exécutent sans consommer de temps logique. L'exécution se décompose donc en une suite d'instants. Dans ce contexte, les boucles peuvent poser deux types de problèmes: d'une part une boucle instantanée peut bloquer l'écoulement du temps; d'autre part un bloc de code peut être traversé plusieurs fois au cours du même instant, conduisant à un comportement du programme dit "schizophrène". Les boucles instantanées sont proscrites par la sémantique. Elles doivent donc être détectées par les compilateurs et les programmes correspondants doivent être rejetés. Par ailleurs, la compilation efficace des programmes schizophrènes est difficile. Ainsi, alors que plusieurs compilateurs pour Esterel sont disponibles, les algorithmes employés pour compiler les boucles ne sont ni portables, ni formellement spécifiés, et encore moins prouvés. Dans ce document, nous étudions les boucles en Esterel, établissant une correspondance formelle entre la sémantique opérationnelle du langage et l'implémentation concrète d'un compilateur. Après avoir spécifié les problèmes posés par les boucles, nous développons des techniques d'analyse statique efficaces pour les détecter dans un code Esterel quelconque. Puis, de façon à guérir la schizophrénie, c'est à dire transformer efficacement les programmes schizophrènes en programmes non schizophrènes, nous introduisons dans le langage une nouvelle primitive appelée "gotopause". Elle permet de transférer le contrôle d'un point du programme à un autre de façon non instantanée, mais sans contrainte de localité. Elle préserve le modèle de concurrence synchrone d'Esterel. Nous décrivons un premier algorithme qui, en dépliant les boucles à l'aide de cette nouvelle instruction, produit pour tout programme Esterel correct un programme non schizophrène équivalent. Enfin, en combinant analyse statique et réécriture, nous obtenons un préprocesseur qui rejette les boucles instantanées et guérit la schizophrénie, à la fois portable et très efficace. Nous l'avons implémenté. De plus, grâce à une approche formelle de bout en bout, nous avons pu prouver la correction de ce préprocesseur.
4

Méthodes et outils informatiques pour la commande locale ou distante de systèmes réactifs

Le Parc, Philippe 08 July 2004 (has links) (PDF)
Ce document résume mon activité de recherche depuis 1991. Elle a porté sur deux thématiques connexes : la modélisation et la validation de langages métier de l'automatisme et le contrôle à distance de systèmes mécaniques sur des réseaux de communication non fiables. Le premier axe de recherche portait plus précisément sur la définition formelle des langages classiques de l'automatisme (langage à relais et Grafcet) à l'aide des formalismes synchrones tels que Signal ou Lustre. L'intérêt d'un tel travail était de pouvoir exprimer les différentes interprétations possibles d'un même programme afin de pouvoir les comparer ; les environnements développés autour des formalismes synchrones permettant alors la réalisation directe de simulateurs ainsi que l'ouverture vers des outils autorisant la validation des programmes. Dans ce dernier domaine, différentes pistes ont été étudiées avant de retenir une modélisation à l'aide d'automates temporisés permettant alors l'expression de propriétés temporelles sur les programmes modélisés. Le deuxième axe de travail avait et a pour objectif d'étudier la faisabilité de l'introduction des nouvelles technologies, et en particulier des technologies réseau, dans le contrôle supervisé de systèmes mécaniques. Le réseau est ici vu comme un réseau sans qualité de service, de type Internet, alors que l'une des préoccupations majeures des automaticiens est d'assurer une sécurité maximale. Dans un premier temps, nous avons proposé une architecture logicielle permettant la communication entre l'opérateur et le système à contrôler. Basée sur un noyau de services complété par des pilotes spécifiques aux applications cibles, elle est facilement extensible. Pour prendre en compte les aléas réseau, la méthodologie Gemma, utilisée en ingéniérie des automatismes, a été étendue afin d'intégrer des informations en provenance d'un capteur réseau. Ce dernier permet d'estimer la qualité de la connexion d'un bout à l'autre du système de communication et doit être pris en compte automatiquement, et en permanence, par le système afin d'assurer la sécurité du contrôle supervisé. Bien que différentes, ces deux thématiques se rejoignent sur de nombreux points : --- Le domaine d'application, c'est à dire le contrôle de systèmes en environnement de production industriel. D'un côté, on a cherché à assurer une meilleure qualité, de la spécification à l'implantation en passant par la vérification des applications. De l'autre en proposant l'utilisation des nouvelles technologies de communication pour améliorer la productivité globale de l'entreprise. --- L'utilisation et l'introduction des méthodes et des outils de l'informaticien auprès de la communauté des automaticiens. Dans mon premier domaine de recherche, par l'intermédiaire du monde dit "synchrone" et dans le deuxième par la mise en oeuvre des technologies autour de l'Internet. Dans les deux cas, les technologies informatiques se sont placées au service d'autres disciplines tout en essayant de faire ressortir les points difficiles et de proposer des solutions innovantes. --- Le souci permanent de construire des applications sûres et de valider, si possible de manière formelle, les résultats obtenus. Cet aspect est surtout visible dans le cadre de la première activité de recherche, mais des travaux, non encore achevés, ont également porté sur la validation de l'architecture logicielle proposée pour le contrôle à distance. Ils sont directement issus des connaissances et de l'expérience acquises dans le premier thème.
5

Programmation web réactive / Reactive Web Programming

Vidal, Colin 06 July 2018 (has links)
Le web est une plate-forme universelle pour développer des applications riches en interactions avec les utilisateurs et des services distants. Ces interactions sont implémentées sous forme d’évènements asynchrones pouvant survenir à n’importe quel instant de l’exécution de l’application. JavaScript, le langage du web, gère les évènements asynchrones de façon peu abstraite, ce qui rend l’écriture, la vérification et la maintenance d’applications interactives difficile. La contribution de cette thèse est l’élaboration et l’implémentation du langage Hiphop.js qui dote JavaScript d’abstractions de plus haut niveau pour gérer les évènements asynchrones. Hiphop.js est une implémentation JavaScript de constructions temporelles du langage réactif synchrone Esterel. Grâce à ces constructions, le flot de contrôle d’une application Hiphop.js est explicite. Il est donc possible de savoir précisément quand et sous quelles conditions un évènement est traité par simple lecture du code source de l’application. Ceci facilite la vérification et la maintenance de l’application. L’intégration profonde du langage Hiphop.js avec l’environnement dynamique du web est une part importante des travaux entrepris dans cette thèse. Les programmes sont construits et compilés pendant l’exécution de l’application JavaScript ce qui permet d’adapter automatiquement le traitement des évènements asynchrones en fonction des changements de l’environnement au cours de l’exécution (par exemple, la connexion ou déconnexion de participants pendant une visioconférence). / The web is an universal platform used to develop applications interacting with users and remote services. These interactions are implemented as asynchronous events that can be fired anytime. JavaScript, the mainstream language of the web, handles asynchronous events using low-level abstractions that makes it difficult to write, verify, and maintain interactive applications. We have addressed this problem by designing and implementing a new domain specific language called Hiphop.js. It offers an alternative to JavaScript event handling mechanism by reusing temporal constructions coming from the synchronous programming language Esterel. These constructions make the control flow of the program explicit and deterministic. Hiphop.js is embedded in JavaScript and suits the traditional dynamic programming style of the Web. It is tighly coupled to JavaScript with which it can exchange values and access any data structures. It can also support dynamic modifications of existing programs needed to support on-demand download on the Web. It can run on both end of Web applications, namely on servers and on clients. In this thesis, we present Hiphop.js, its design and implementation. We overview its programming environment and we present the prototypical web applications we have implemented to validate the approach.
6

Méthodes logico-numériques pour la vérification des systèmes discrets et hybrides

Schrammel, Peter 18 October 2012 (has links) (PDF)
Cette thèse étudie la vérification automatique de propriétés de sûreté de systèmes logico-numériques discrets ou hybrides. Ce sont des systèmes ayant des variables booléennes et numériques et des comportements discrets et continus. Notre approche est fondée sur l'analyse statique par interprétation abstraite. Nous adressons les problèmes suivants : les méthodes d'interprétation abstraite numériques exigent l'énumération des états booléens, et par conséquent, ils souffrent du probléme d'explosion d'espace d'états. En outre, il y a une perte de précision due à l'utilisation d'un opérateur d'élargissement afin de garantir la terminaison de l'analyse. Par ailleurs, nous voulons rendre les méthodes d'interprétation abstraite accessibles à des langages de simulation hybrides. Dans cette thèse, nous généralisons d'abord l'accélération abstraite, une méthode qui améliore la précision des invariants numériques inférés. Ensuite, nous montrons comment étendre l'accélération abstraite et l'itération de max-stratégies à des programmes logico-numériques, ce qui aide à améliorer le compromis entre l'efficacité et la précision. En ce qui concerne les systèmes hybrides, nous traduisons le langage de programmation synchrone et hybride Zelus vers les automates hybrides logico-numériques, et nous étendons les méthodes d'analyse logico-numérique aux systèmes hybrides. Enfin, nous avons mis en oeuvre les méthodes proposées dans un outil nommé ReaVer et nous fournissons des résultats expérimentaux. En conclusion, cette thèse propose une approche unifiée à la vérification de systèmes logico-numériques discrets et hybrides fondée sur l'interprétation abstraite qui est capable d'intégrer des méthodes d'interprétation abstraite numériques sophistiquées tout en améliorant le compromis entre l'efficacité et la précision.
7

Logico-Numerical Verification Methods for Discrete and Hybrid Systems / Méthodes logico-numériques pour la vérification des systèmes discrets et hybrides

Schrammel, Peter 18 October 2012 (has links)
Cette thèse étudie la vérification automatique de propriétés de sûreté de systèmes logico-numériques discrets ou hybrides. Ce sont des systèmes ayant des variables booléennes et numériques et des comportements discrets et continus. Notre approche est fondée sur l'analyse statique par interprétation abstraite. Nous adressons les problèmes suivants : les méthodes d'interprétation abstraite numériques exigent l'énumération des états booléens, et par conséquent, ils souffrent du probléme d'explosion d'espace d'états. En outre, il y a une perte de précision due à l'utilisation d'un opérateur d'élargissement afin de garantir la terminaison de l'analyse. Par ailleurs, nous voulons rendre les méthodes d'interprétation abstraite accessibles à des langages de simulation hybrides. Dans cette thèse, nous généralisons d'abord l'accélération abstraite, une méthode qui améliore la précision des invariants numériques inférés. Ensuite, nous montrons comment étendre l'accélération abstraite et l'itération de max-stratégies à des programmes logico-numériques, ce qui aide à améliorer le compromis entre l'efficacité et la précision. En ce qui concerne les systèmes hybrides, nous traduisons le langage de programmation synchrone et hybride Zelus vers les automates hybrides logico-numériques, et nous étendons les méthodes d'analyse logico-numérique aux systèmes hybrides. Enfin, nous avons mis en oeuvre les méthodes proposées dans un outil nommé ReaVer et nous fournissons des résultats expérimentaux. En conclusion, cette thèse propose une approche unifiée à la vérification de systèmes logico-numériques discrets et hybrides fondée sur l'interprétation abstraite qui est capable d'intégrer des méthodes d'interprétation abstraite numériques sophistiquées tout en améliorant le compromis entre l'efficacité et la précision. / This thesis studies the automatic verification of safety properties of logico-numerical discrete and hybrid systems. These systems have Boolean and numerical variables and exhibit discrete and continuous behavior. Our approach is based on static analysis using abstract interpretation. We address the following issues: Numerical abstract interpretation methods require the enumeration of the Boolean states, and hence, they suffer from the state space explosion problem. Moreover, there is a precision loss due to widening operators used to guarantee termination of the analysis. Furthermore, we want to make abstract interpretation-based analysis methods accessible to simulation languages for hybrid systems. In this thesis, we first generalize abstract acceleration, a method that improves the precision of the inferred numerical invariants. Then, we show how to extend abstract acceleration and max-strategy iteration to logico-numerical programs while improving the trade-off between efficiency and precision. Concerning hybrid systems, we translate the Zelus hybrid synchronous programming language to logico-numerical hybrid automata and extend logico-numerical analysis methods to hybrid systems. Finally, we implemented the proposed methods in ReaVer, a REActive System VERification tool, and provide experimental results. Concluding, this thesis proposes a unified approach to the verification of discrete and hybrid logico-numerical systems based on abstract interpretation, which is capable of integrating sophisticated numerical abstract interpretation methods while successfully trading precision for efficiency.
8

Un Modèle Réactif Basé sur MARTE Dédié au Calcul Intensif à Parallélisme de Données : Transformation vers le Modèle Synchrone

Huafeng, Yu 27 November 2008 (has links) (PDF)
<p>Les travaux de cette thèse s'inscrivent dans le cadre de la validation formelle et le contrôle réactif de calculs à haute performance sur systèmes-sur-puce (SoC). </p> <p>Dans ce contexte, la première contribution est la modélisation synchrone accompagnée d'une transformation d'applications en équations synchrones. Les modéles synchrones permettent de résoudre plusieurs questions liées à la validation formelle via l'usage des outils et techniques formels offerts par la technologie synchrone. Les transformations sont développées selon l'approche d'Ingénierie Dirigé par les Modèles (IDM). </p> <p>La deuxième contribution est une extension et amélioration des mécanismes de contrôle pour les calculs à haute performance, sous forme de constructeurs de langage de haut-niveau et de leur sémantique. Ils ont été défini afin de permettre la vérification, synthèse et génération de code. Il s'agit de déterminer un niveau d'abstraction de représentation des systèmes où soit extraite la partie contrôle, et de la modéliser sous forme d'automates à états finis. Ceci permet de spécifier et implémenter des changements de modes de calculs, qui se distinguent par exemple par les ressources utilisées, la qualité de service fournie, ou le choix d'algorithme remplissant une fonctionnalité. </p> <p>Ces contributions permettent l'utilisation d'outils d'analyse et vérification, tels que la vérification de propriétés d'assignement unique et dépendance acyclique, model checking. L'utilisation de techniques de synthèse de contrôleurs discrets est également traitée. Elles peuvent assurer la correction de faˆ on constructive: à partir d'une spécification partielle du contrôle, la partie manquante pour que les propriétés soient satisfaites est calculée. Grâce à ces techniques, lors du développement de la partie contrôle, la spécification est simplifiée, et le résultat est assuré d'être correct par construction. </p> <p>Les modélisations synchrone et de contrôle reposes sur MARTE et UML. Les travaux de cette thèse sont été partiellement implémentés dans le cadre de Gaspard, dédié aux applications de traitement de données intensives. Une étude de cas est présentée, dans laquelle nous nous intéressont à une application de système embarqué pour téléphone portable multimédia.</p>
9

A synchronous approach to quasi-periodic systems / Une approche synchrone des systèmes quasi-périodiques

Baudart, Guillaume 13 March 2017 (has links)
Cette thèse traite de systèmes embarqués contrôlés par un ensemble de processus périodiques non synchronisés. Chaque processus est activé quasi-périodiquement, c'est-à-dire périodiquement avec une gigue bornée. Les délais de communication sont également bornés. De tels systèmes réactifs, appelés 'quasi-périodiques', apparaissent dès que l'on branche ensemble deux processus périodiques. Dans la littérature, ils sont parfois qualifiés de systèmes distribués temps-réels synchrones. Nous nous intéressons aux techniques de conception et d'analyse de ces systèmes qui n'imposent pas de synchronisation globale. Les langages synchrones ont été introduits pour faciliter la conception des systèmes réactifs. Ils offrent un cadre privilégié pour programmer, analyser, et vérifier des systèmes quasi-périodiques. En s'appuyant sur une approche synchrone, les contributions de cette thèse s'organisent selon trois thématiques: vérification,implémentation, et simulation des systèmes quasi périodiques.Vérification: 'L'abstraction quasi-synchrone' est une abstraction discrète proposée par Paul Caspi pour vérifier des propriétés de sûreté des systèmes quasi-périodiques. Nous démontrons que cette abstraction est en général incorrecte et nous donnons des conditions nécessaires et suffisantes sur le graphe de communication et les caractéristiques temps-réel de l'architecture pour assurer sa correction. Ces résultats sont ensuite généralisés aux systèmes multi-périodiques.Implémentation: Les 'LTTAs' sont des protocoles conçus pour assurer l'exécution correcte d'une application sur un système quasi-périodique. Nous proposons d'étudier les LTTA dans un cadre synchrone unifié qui englobe l'application et les contrôleurs introduits par les protocoles. Cette approche nous permet de simplifier les protocoles existants, de proposer des versions optimisées, et de donner de nouvelles preuves de correction. Nous présentons également dans le même cadre un protocole fondé sur une synchronisation d'horloge pour comparer les performances des deux approches.Simulation: Un système quasi-périodique est un exemple de modèle faisant intervenir des caractéristiques temps-réels et des tolérances. Pour ce type de modèle non déterministe, nous proposons une 'simulation symbolique', inspirée des techniques de vérification des automates temporisés. Nous montrons comment compiler un modèle mêlant des composantes temps-réel non déterministes et des contrôleurs discrets en un programme discret qui manipule des ensembles de valeurs. Chaque trace du programme résultant capture un ensemble d'exécutions possibles du programme source. / In this thesis we study embedded controllers implemented as sets of unsynchronized periodic processes. Each process activates quasi-periodically, that is, periodically with bounded jitter, and communicates with bounded transmission delays. Such reactive systems,termed 'quasi-periodic', exist as soon as two periodic processes areconnected together. In the distributed systems literature they arealso known as synchronous real-time models. We focus on techniquesfor the design and analysis of such systems without imposing a globa lclock synchronization. Synchronous languages were introduced as domain specific languages for the design of reactive systems. They offer an ideal framework to program, analyze, and verify quasi-periodic systems. Based on a synchronous approach, this thesis makes contributions to the treatment of quasi-periodic systems along three themes: verification,implementation, and simulation.Verification: The 'quasi-synchronous abstraction' is a discrete abstraction proposed by Paul Caspi for model checking safety properties of quasi-periodic systems. We show that this abstractionis not sound in general and give necessary and sufficient conditionson both the static communication graph of the application and the real-time characteristics of the architecture to recover soundness. We then generalize these results to multirate systems.Implementation: 'Loosely time-triggered architectures' are protocols designed to ensure the correct execution of an application running on a quasi-periodic system. We propose a unified framework that encompasses both the application and the protocol controllers. This framework allows us to simplify existing protocols, propose optimized versions, and give new correctness proofs. We instantiate our framework with a protocol based on clock synchronization to compare the performance of the two approaches.Simulation: Quasi-periodic systems are but one example of timed systems involving real-time characteristics and tolerances. For such nondeterministic models, we propose a 'symbolic simulation' scheme inspired by model checking techniques for timed automata. We show how to compile a model mixing nondeterministic continuous-time and discrete-time dynamics into a discrete program manipulating sets of possible values. Each trace of the resulting program captures a set of possible executions of the source program.
10

Raffinement temporel et exécution parallèle dans un langage synchrone fonctionnel

Pasteur, Cédric 26 November 2013 (has links) (PDF)
Nous nous intéressons dans ce manuscrit au langage ReactiveML, qui est une extension de ML avec des constructions inspirées des langages synchrones. L'idée de ces langages est de diviser l'exécution d'un programme en une suite d'instants logiques discrets. Cela permet de proposer un modèle de concurrence déterministe que l'on peut compiler vers du code séquentiel impératif. La principale application de ReactiveML est la simulation discrète, par exemple de réseaux de capteurs. Nous cherchons ici à programmer des simulations à grande échelle, ce qui pose deux questions : sait-on les programmer de façon simple et modulaire ? sait-on ensuite exécuter ces programmes efficacement ? Nous répondons à la première question en proposant une extension du modèle synchrone appelée domaines réactifs. Elle permet de créer des instants locaux invisibles de l'extérieur. Cela rend possible le raffinement temporel, c'est-à-dire le remplacement d'une approximation d'un système par une version plus détaillée sans changer son comportement externe. Nous développons dans ce manuscrit la sémantique formelle de cette construction ainsi que plusieurs analyses statiques, sous forme de systèmes de types-et-effets, garantissant la sûreté des programmes dans le langage étendu. Enfin, nous montrons également plusieurs implémentations parallèles du langage pour tenter de répondre à la question du passage à l'échelle des simulations. Nous décrivons tout d'abord une implémentation avec threads communiquant par mémoire partagée et basée sur le vol de tâches, puis une seconde implémentation utilisant des processus lourds communiquant par envoi de messages.

Page generated in 0.4551 seconds