An Approach for Verifying Concurrent C Programs - Archive ouverte HAL
Communication Dans Un Congrès Année : 2014

An Approach for Verifying Concurrent C Programs

Résumé

As software system and its complexity are fast growing, software correctness becomes more and more a crucial issue. We address the problem of verifying functional properties of real-time operating system (microkernel) implemented with C. We present a work-in-progress approach for formally specifying and verifying concurrent C programs directly based on the semantics of C. The basis of this approach is to automatically translate a C code into a TLA+ specification which can be checked by the TLC model checker. We define a set of translation rules and implement it in a tool (C2TLA+) that automatically translates C code into a TLA+ specification. Generated specifications can be integrated with manually written specifications that provide primitives that cannot be expressed in C, or that provide abstract versions of the generated specifications to address the state-explosion problem.
Fichier principal
Vignette du fichier
article.pdf (1000.15 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-01315749 , version 1 (13-05-2016)

Identifiants

  • HAL Id : hal-01315749 , version 1

Citer

Amira Methni, Matthieu Lemerre, Belgacem Ben Hedia, Kamel Barkaoui, Serge Haddad. An Approach for Verifying Concurrent C Programs. 8th Junior Researcher Workshop on Real-Time Computing, Oct 2014, Versailles, France. pp.33-36. ⟨hal-01315749⟩
263 Consultations
186 Téléchargements

Partager

More