Cœur de calcul efficace, prédictible et composable pour les systèmes temps-réel critiques
| Auteur / Autrice : | Alban Gruin |
| Direction : | Pascal Sainrat, Thomas Carle |
| Type : | Thèse de doctorat |
| Discipline(s) : | Informatique et télécommunications |
| Date : | Soutenance le 03/12/2024 |
| Etablissement(s) : | Université de Toulouse (2023-....) |
| Ecole(s) doctorale(s) : | École doctorale Mathématiques, informatique et télécommunications (Toulouse) |
| Partenaire(s) de recherche : | Etablissement de délivrance conjointe : Université Toulouse 3 Paul Sabatier (1969-2024) |
| Laboratoire : Institut de Recherche en Informatique de Toulouse (1995-....) | |
| Jury : | Président / Présidente : Jean-Paul Bodeveix |
| Examinateurs / Examinatrices : Claire Maiza | |
| Rapporteurs / Rapporteuses : Angeliki Kritikakou, Frédéric Pétrot |
Mots clés
Résumé
Les systèmes temps-réel sont un type de systèmes informatiques dans lesquels la notion de temps a son importance au-delà de la seule fonctionnalité. Dans cette catégorie, les systèmes temps-réel stricts sont soumis à des contraintes temporelles fortes. Ils sont généralement des systèmes critiques : leur incapacité à compléter une tâche en un temps donné peut entraîner des conséquences graves pour le système en lui-même, ses opérateurs, ou les personnes dépendant de son bon fonctionnement. Pour s'assurer du respect des contraintes temporelles par l'application, il est généralement fait recours au calcul de leur pire temps d'exécution (WCET). Cette analyse dépend de la plateforme matérielle sous-jacente. Les besoins grandissants de ces applications demandent des systèmes matériels de plus en plus performants. Cependant, ces systèmes sont généralement plus complexes, et rendent le calcul du WCET de plus en plus difficile. Parmi les difficultés rencontrées, on trouve les anomalies temporelles, des situations où un meilleur cas local (calculé sur une petite portion d'un programme) peut amener au pire cas pour l'ensemble du programme. Cela demande aux outils d'analyse de considérer toutes les situations possibles lorsque l'état du matériel n'est pas connu avec certitude. Cette énumération est combinatoire ; elle est donc possible sur des systèmes matériels simples tels que les plateformes mono-cœur, mais pas aussi complexes que les multi-cœurs. Plusieurs axes de recherche se sont développés autour de cette problématique : l'amélioration des techniques et des outils de calcul de pire temps d'exécution, que ce soit au travers de l'interprétation abstraite ou de l'analyse probabiliste ; l'ordonnancement des tâches exécutées par le système de manière à réduire le risque d'interférences ; ou la conception de processeurs spécialisés, soit donnant la main sur leur comportement temporel, ne souffrant pas d'anomalies temporelles. Les contributions présentées dans cette thèse s'inscrivent dans ce dernier axe, au travers du design de processeurs prédictibles, de la modélisation et de la démonstration de propriétés temporelles à l'aide d'un assistant de preuves et de la vérification de tels modèles par simulation.