La programmation synchrone a ete proposee pour faciliter la conception et la programmation des systemes reactifs (systemes dont le role est de reagir continument a leur environnement physique, celui-ci etant incapable de se synchroniser avec le systeme). Ces systemes sont tres souvent repartis, que ce soit pour des raisons d'implantation physique, d'amelioration des performances ou de tolerance aux pannes. En outre, les travaux sur la compilation des langages synchrones ont conduit a utiliser une representation interne des programmes sous forme d'un automate d'etats fini : c'est le format OC. Ce travail porte donc sur la repartition automatique des programmes OC. La principale difficulte est d'assurer l'equivalence fonctionnelle et temporelle entre le programme centralise initial et le programme reparti, et de prouver cette equivalence, ce qui est indispensable dans le domaine du temps reel critique. Nous nous attachons egalement a minimiser localement la structure de controle de chaque programme reparti. Pour cela nous developpons un algorithme original de reduction des tests ``a la volee'' utilisant des techniques de bisimulation. D'autre part nous definissons completement l'environnement d'execution des programmes repartis. Ici notre principal souci est de fournir une solution la plus proche possible de l'execution centralisee. Enfin dans le but d'expliquer les desynchronisations introduites par la repartition, nous proposons une semantique originale du langage synchrone Lustre, semantique definie par des ordres partiels.
Identifer | oai:union.ndltd.org:CCSD/oai:tel.archives-ouvertes.fr:tel-00005097 |
Date | 28 January 1994 |
Creators | Girault, Alain |
Source Sets | CCSD theses-EN-ligne, France |
Language | French |
Detected Language | French |
Type | PhD thesis |
Page generated in 0.0017 seconds