SPINning Parallel Systems Software
O. S. Matlin, E. Lusk, W. McCune
Abstract
We describe our experiences in using SPIN to verify parts of the Multi Purpose Daemon (MPD) parallel process management system. MPD is a distributed collection of processes connected by Unix network sockets. MPD is dynamic: processes and connections among them are created and destroyed as MPD is initialized, runs user processes, recovers from faults, and terminates. This dynamic nature is easily expressible in the SPIN/PROMELA framework but poses performance and scalability challenges. We present here the results of expressing some of the parallel algorithms of MPD and executing both simulation and verification runs with SPIN.
Create a lesson
Related papers
Model Checking HyperRecHML is Decidable
Elli Anastasiadi, Kim Guldstrand Larsen, Martin Zimmermann
Two Variables and Two-Dimensional Structures
Bartosz Jan Bednarczyk, Daumantas Kojelis, Krzysztof Szymański
Reconstruction of continuous Archimedean t-norms from their section along an increasing curve
Gabriel Bauza-Llompart, Raquel Fernandez-Peralta, Marc Munar
Automating Observable Closure Analysis for Graph Transformation Models with MolFoundry
Marcel Friedrichs, Addie Jordon, Juri Kolčák et al.
Beyond LLM Judge: Mechanical Verification for Agentic Autoformalization
Anna Mei, Michael R. Douglas
Finite Satisfiability of Two-Variable Logic with Arbitrarily Many Successors
Artur Jeż, Jakub Michaliszyn, Piotr Witkowski