Un système temps réel est un système dont la correction dépend non seulement des valeurs qu'il produit, mais aussi du temps quand il produit ces valeurs. La fréquence à laquelle il doit produire ces valeurs est définie par l'environnement dans lequel il opère. Un exemple typique est le système de contrôle d'un avion. Afin de garantir la sécurité de l'avion, celui-ci doit être capable de réagir dans un temps approprié à des perturbations externes tel que des rafales de vent. Quand on programme un tel système, il est important que le langage de programmation permette de raisonner sur les contraintes introduites par ce contexte. Les langages synchrones sont bien adaptés pour la programmation de systèmes temps réels critiques grâce à leur sémantique formelle et leur processus de compilation bien défini. Cependant, les systèmes temps réels et les attentes y associées ont considérablement évolués depuis la conceptions de ces langages. Dans ce travail, nous allons présenter des extensions au langage Prelude pour aborder deux limitations: La programmation de systèmes multicœur prédictible et la reconfiguration du système pendant l'exécution.
M. Giuseppe LIPARI Université de Lille Directeur de thèse M. Robert DE SIMONE INRIA Sophia-Antipolis Méditerranée Rapporteur M. Jean-Pierre TALPIN Inria Rennes - Bretagne Atlantique Rapporteur M. Julien FORGET Université de Lille Examinateur M. Timothy BOURKE École normale supérieure Examinateur Mme Claire PAGETTI ONERA Toulouse Examinatrice
Thèse de l'équipe SyCoMoRES soutenue le 04/10/2022