Implementation of resilient, atomic data types
- 1 April 1985
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Programming Languages and Systems
- Vol. 7 (2) , 244-269
- https://doi.org/10.1145/3318.3319
Abstract
A major issue in many applications is how to preserve the consistency of data in the presence of concurrency and hardware failures. We suggest addressing this problem by implementing applications in terms of abstract data types with two properties: Their objects are atomic (they provide serializability and recoverability for activities using them) and resilient (they survive hardware failures with acceptably high probability). We define what it means for abstract data types to be atomic and resilient. We also discuss issues that arise in implementing such types, and describe a particular linguistic mechanism provided in the Argus programming language.Keywords
This publication has 17 references indexed in Scilit:
- Synchronizing shared abstract typesACM Transactions on Computer Systems, 1984
- Guardians and Actions: Linguistic Support for Robust, Distributed ProgramsACM Transactions on Programming Languages and Systems, 1983
- Locking Primitives in a Database SystemJournal of the ACM, 1983
- On optimistic methods for concurrency controlACM Transactions on Database Systems, 1981
- The Recovery Manager of the System R Database ManagerACM Computing Surveys, 1981
- Issues in the design and use of a distributed file systemACM SIGOPS Operating Systems Review, 1980
- Experience with processes and monitors in MesaCommunications of the ACM, 1980
- Abstraction mechanisms in CLUCommunications of the ACM, 1977
- The notions of consistency and predicate locks in a database systemCommunications of the ACM, 1976
- MonitorsCommunications of the ACM, 1974