Preprint Article Version 1 Preserved in Portico This version is not peer-reviewed

Correctness Verification of Mutual Exclusion Algorithms by Model Checking

Version 1 : Received: 3 April 2024 / Approved: 5 April 2024 / Online: 5 April 2024 (06:41:37 CEST)

How to cite: Nigro, L.; Cicirelli, F. Correctness Verification of Mutual Exclusion Algorithms by Model Checking. Preprints 2024, 2024040410. https://doi.org/10.20944/preprints202404.0410.v1 Nigro, L.; Cicirelli, F. Correctness Verification of Mutual Exclusion Algorithms by Model Checking. Preprints 2024, 2024040410. https://doi.org/10.20944/preprints202404.0410.v1

Abstract

Mutual exclusion algorithms are at the heart of concurrent, distributed/parallel, real-time and operating systems. It is well-known that such algorithms are very difficult to analyze and in the literature different conjectures about starvation-freedom and the number of by-passes (also said the overtaking factor), which in turn affects the (hopefully) bounded waiting time that a process competing for entering the critical section has to suffer before accessing the shared resource, have been formulated for specific algorithms. This paper proposes a novel modelling approach based on Timed Automata and the Uppaal toolset, which proves effective for studying all the properties of a mutual exclusion algorithm for N≥2 processes, by exhaustive model checking. Although the approach, as already confirmed by similar experiments reported in the literature, is not scalable due to state explosion problems, and can be practically applied until N≤5, it is of great value for revealing true properties of analyzed algorithms. For dimensions N>5 the statistical model checker of Uppaal can be used which, although based on simulations, can confirm properties by estimations and probabilities. The paper describes the proposed modelling and verification method and applies it to several mutual exclusion algorithms, thus retrieving known properties but also showing new results about properties often studied only by peer-review and intuitive reasoning.

Keywords

Mutual exclusion algorithms; correctness analysis; automated reasoning; model checking; statistical model checking; Timed Automata; Uppaal

Subject

Computer Science and Mathematics, Computer Science

Comments (0)

We encourage comments and feedback from a broad range of readers. See criteria for comments and our Diversity statement.

Leave a public comment
Send a private comment to the author(s)
* All users must log in before leaving a comment
Views 0
Downloads 0
Comments 0
Metrics 0


×
Alerts
Notify me about updates to this article or when a peer-reviewed version is published.
We use cookies on our website to ensure you get the best experience.
Read more about our cookies here.