Auteur / Autrice : | Olivier Tardieu |
Direction : | Gérard Berry |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique, temps réel, robotique et automatique |
Date : | Soutenance en 2004 |
Etablissement(s) : | Paris, ENMP |
Résumé
Esterel est un langage impératif synchrone pour la programmation de systèmes réactifs orientés contrôle. De façon à dériver une description formelle de compilateur Esterel à partir d’une sémantique opérationnelle du langage, nous proposons une nouvelle sémantique qui exclut les exécutions non déterministes. Puis nous nous concentrons sur les problèmes posés par la compilation des boucles. Les primitives du langage à l’exception de l’instruction « pause » s’exécutent sans consommer de temps logique. Par conséquent les boucles peuvent conduire à la répétition instantanée d’un même bloc de code, d’où de possibles blocages (répétition infinie) et des comportements difficiles à implémenter correctement (répétition finie). À l’aide d’une nouvelle instruction de saut non instantané « gotopause » et en combinant analyse statique et réécriture de code, nous spécifions un schéma de compilation des boucles à la fois portable, performant et sûr. Nous démontrons sa correction.