Thèse soutenue

Modélisation et vérification formelles d’un RTOS multicoeur conforme à AUTOSAR

FR  |  
EN
Auteur / Autrice : Imane Haur
Direction : Olivier-Henri RouxJean-Luc Béchennec
Type : Thèse de doctorat
Discipline(s) : Automatique, productique et robotique
Date : Soutenance le 30/11/2022
Etablissement(s) : Ecole centrale de Nantes
Ecole(s) doctorale(s) : École doctorale Mathématiques et sciences et technologies de l'information et de la communication (Rennes)
Partenaire(s) de recherche : Laboratoire : Laboratoire des Sciences du Numérique de Nantes
Jury : Président / Présidente : Emmanuel Grolleau
Examinateurs / Examinatrices : Olivier-Henri Roux, Jean-Luc Béchennec, Emmanuel Grolleau, Patrick Martineau, Gaétan Hains, Isabelle Puault
Rapporteur / Rapporteuse : Emmanuel Grolleau, Patrick Martineau

Résumé

FR  |  
EN

La vérification formelle est une solution pour augmenter la fiabilité de l’implémentation du système. Dans notre travail de thèse, nous nous intéressons à l’utilisation de ces méthodes pour la vérification des systèmes d’exploitation multi-coeurs temps réel. Nous proposons une approche de model-checking utilisant les réseaux de Petri temporels, étendus avec des transitions colorées et des fonctionnalités de haut niveau. Nous utilisons ce formalisme pour modéliser le système d’exploitation multi-coeur Trampoline, conforme aux standards OSEK/VDX etAUTOSAR. Nous définissons dans un premier temps ce formalisme et montrons son adéquation avec la modélisation de systèmes concurrents temps reel. Nous utilisons ensuite ce formalisme pour modéliser le système d’exploitation multi-coeur Trampoline et vérifions par model-checking sa conformité avec le standard AUTOSAR. À partir de ce modèle, nous pouvons vérifier des propriétés aussi bien sur l’OS que sur l’application telles que l’ordonnançabilité d’un système tempsréel ainsi que les mécanismes de synchronisation : accès concurrents aux structures de données du système d’exploitation, ordonnancement multi-coeur et traitement des interruptions inter-coeur. À titre d’illustration, cette méthode a permis l’identification automatique de deux erreurs possibles de l’OS Trampoline dans l’exécution concurrente, montrant une protection insuffisante des données et une synchronisation défectueuse.