Verification of concurrent control flow in distributed computer systems
- 1 April 1988
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. 14 (4) , 405-417
- https://doi.org/10.1109/32.4662
Abstract
An approach to verifying control flow in distributed computer systems (DCS) is presented.The approach is based on control flow checking among software components distributed over processors and cooperating among them.In this approach, control flow behavior of DCS software is modeled and contained in special software components called verifiers.The verifiers are distributed over the processors and consulted to check the correctness of the control flow in DCS software during its execution.Algorithms for deriving the verifiers are presented.This technique can detect global errors including synchronization errors as well as local errors.It can be used for sequential or concurrent software at various levels of details.Experiments show that using this technique requires no significant overhead.Keywords
This publication has 21 references indexed in Scilit:
- OBSERVER A CONCEPT FOR ON-LINE DETECTION OF CONTROL ERRORS IN CONCURRENT SYSTEMSPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2005
- Guardians and Actions: Linguistic Support for Robust, Distributed ProgramsACM Transactions on Programming Languages and Systems, 1983
- An Approach to Concurrent Control Flow CheckingIEEE Transactions on Software Engineering, 1980
- Exception Handling in CLUIEEE Transactions on Software Engineering, 1979
- Preliminary Ada reference manualACM SIGPLAN Notices, 1979
- Communicating sequential processesCommunications of the ACM, 1978
- Fault-Tolerant Software for Real-Time ApplicationsACM Computing Surveys, 1976
- Exception handlingCommunications of the ACM, 1975
- Concurrent software fault detectionIEEE Transactions on Software Engineering, 1975
- Testing large software with automated software evaluation systemsIEEE Transactions on Software Engineering, 1975