Distributed Simulation: A Case Study in Design and Verification of Distributed Programs
- 1 September 1979
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. SE-5 (5) , 440-452
- https://doi.org/10.1109/tse.1979.230182
Abstract
The problem of system simulation is typically solved in a sequential manner due to the wide and intensive sharing of variables by all parts of the system. We propose a distributed solution where processes communicate only through messages with their neighbors; there are no shared variables and there is no central process for message routing or process scheduling. Deadlock is avoided in this system despite the absence of global control. Each process in the solution requires only a limited amount of memory. The correctness of a distributed system is proven by proving the correctness of each of its component processes and then using inductive arguments. The proposed solution has been empirically found to be efficient in preliminary studies. The paper presents formal, detailed proofs of correctness.Keywords
This publication has 7 references indexed in Scilit:
- Distributed simulation of networksComputer Networks (1976), 1979
- On-the-fly garbage collectionCommunications of the ACM, 1978
- Communicating sequential processesCommunications of the ACM, 1978
- An axiomatic proof technique for parallel programs IActa Informatica, 1976
- Self-stabilizing systems in spite of distributed controlCommunications of the ACM, 1974
- Synchronization of communicating processesCommunications of the ACM, 1972
- Program development by stepwise refinementCommunications of the ACM, 1971