Skip to Main content Skip to Navigation
New interface
Theses

Assisted Concurrent Program Verification by Code and Specification Transformation

Abstract : Vérifier formellement des programmes concurrents est une tâche difficile. S’il existe différentes techniques pour la réaliser, très peu sont effectivement mises en œuvre pour des programmes écrits dans des langages de programmation réalistes. En revanche, les techniques de vérification formelles de programmes séquen- tiels sont utilisées avec succès depuis plusieurs années déjà, et permettent d’atteindre de hauts degrés de confiance dans nos systèmes. Cette thèse propose une alternative aux méthodes d’analyses dédiées à la vérification de programmes concurrents consistant à transformer le programme concurrent en un programme séquentiel pour le rendre analysable par des outils dédiés aux programmes séquentiels. Nous nous plaçons dans le contexte de FRAMA-C, une plate-forme d’analyse de code C spécifié avec le langage ACSL. Les différentes analyses de FRAMA-C sont des greffons à la plate-forme, ceux-ci sont à ce jour majoritairement dédiés aux programmes séquentiels. La méthode de vérification que nous proposons est appliquée manuellement à la vérification d’un code concurrent issu d’un hyperviseur. Nous automatisons la méthode à travers un nouveau greffon à FRAMA-C qui permet de produire automatiquement, depuis un programme concurrent spécifié, un programme séquentiel spécifié équivalent. Nous présentons les bases de sa formalisation, ayant pour but d’en prouver la validité. Cette validité n’est valable que pour la classe des programmes séquentiellement consistant. Nous proposons donc finalement un prototype de solveur de contraintes pour les modèles mémoire faibles, capable de déterminer si un programme appartient bien à cette classe en fonction du modèle mémoire cible.
Complete list of metadata

https://hal.archives-ouvertes.fr/tel-03624110
Contributor : Frédéric Loulergue Connect in order to contact the contributor
Submitted on : Wednesday, March 30, 2022 - 9:18:58 AM
Last modification on : Tuesday, April 5, 2022 - 3:34:35 AM

Identifiers

  • HAL Id : tel-03624110, version 1

Citation

Allan Blanchard. Assisted Concurrent Program Verification by Code and Specification Transformation. Génie logiciel [cs.SE]. Université d'Orléans (UO), 2016. Français. ⟨NNT : ⟩. ⟨tel-03624110⟩

Share

Metrics

Record views

21