Synchronizing shared abstract types
ACM Transactions on Computer Systems (TOCS)
On optimistic methods for concurrency control
ACM Transactions on Database Systems (TODS)
The serializability of concurrent database updates
Journal of the ACM (JACM)
Locking Primitives in a Database System
Journal of the ACM (JACM)
The Recovery Manager of the System R Database Manager
ACM Computing Surveys (CSUR)
Guardians and Actions: Linguistic Support for Robust, Distributed Programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Experience with processes and monitors in Mesa
Communications of the ACM
Abstract data types and software validation
Communications of the ACM
Communications of the ACM
The notions of consistency and predicate locks in a database system
Communications of the ACM
Monitors: an operating system structuring concept
Communications of the ACM
CLU Reference Manual
Notes on Data Base Operating Systems
Operating Systems, An Advanced Course
Distributed Systems - Architecture and Implementation, An Advanced Course
Recovery semantics for a DB/DC system
ACM '73 Proceedings of the ACM annual conference
A client-based transaction system to maintain data integrity
SOSP '79 Proceedings of the seventh ACM symposium on Operating systems principles
Weighted voting for replicated data
SOSP '79 Proceedings of the seventh ACM symposium on Operating systems principles
Concurrency control algorithms for multiversion database systems
PODC '82 Proceedings of the first ACM SIGACT-SIGOPS symposium on Principles of distributed computing
Data-dependent concurrency control and recovery (Extended Abstract)
PODC '83 Proceedings of the second annual ACM symposium on Principles of distributed computing
Specification and implementation of resilient, atomic data types
Proceedings of the 1983 ACM SIGPLAN symposium on Programming language issues in software systems
Programming with abstract data types
Proceedings of the ACM SIGPLAN symposium on Very high level languages
Issues in the design and use of a distributed file system
ACM SIGOPS Operating Systems Review
NAMING AND SYNCHRONIZATION IN A DECENTRALIZED COMPUTER SYSTEM
NAMING AND SYNCHRONIZATION IN A DECENTRALIZED COMPUTER SYSTEM
NESTED TRANSACTIONS: AN APPROACH TO RELIABLE DISTRIBUTED COMPUTING
NESTED TRANSACTIONS: AN APPROACH TO RELIABLE DISTRIBUTED COMPUTING
SPECIFICATION AND IMPLEMENTATION OF ATOMIC DATA TYPES
SPECIFICATION AND IMPLEMENTATION OF ATOMIC DATA TYPES
REPLICATION METHODS FOR ABSTRACT DATA TYPES
REPLICATION METHODS FOR ABSTRACT DATA TYPES
ACM Transactions on Information Systems (TOIS)
SOSP '87 Proceedings of the eleventh ACM Symposium on Operating systems principles
Distributed programming in Argus
Communications of the ACM
Types and persistence in database programming languages
ACM Computing Surveys (CSUR)
Synchronizing Transactions on Objects
IEEE Transactions on Computers
Commutativity-Based Concurrency Control for Abstract Data Types
IEEE Transactions on Computers
A model for concurrency in nested transactions systems
Journal of the ACM (JACM)
Reliable servers: design and implementation in avalon/C++
DPDS '88 Proceedings of the first international symposium on Databases in parallel and distributed systems
Local atomicity properties: modular concurrency control for abstract data types
ACM Transactions on Programming Languages and Systems (TOPLAS)
Timestamp-Based Orphan Elimination
IEEE Transactions on Software Engineering
Programming languages for distributed computing systems
ACM Computing Surveys (CSUR)
Linguistic support for atomic data types
ACM Transactions on Programming Languages and Systems (TOPLAS)
Design of the Mneme persistent object store
ACM Transactions on Information Systems (TOIS)
Semantics-based concurrency control: beyond commutativity
ACM Transactions on Database Systems (TODS)
Providing high availability using lazy replication
ACM Transactions on Computer Systems (TOCS)
A Case Study of CES: A Distributed Collaborative Editing System Implemented in Argus
IEEE Transactions on Software Engineering - Special issue: specification and analysis of real-time systems
ACM Transactions on Computer Systems (TOCS)
Consistency and orderability: semantics-based correctness criteria for databases
ACM Transactions on Database Systems (TODS)
Understanding the limitations of causally and totally ordered communication
SOSP '93 Proceedings of the fourteenth ACM symposium on Operating systems principles
Atomic incremental garbage collection and recovery for a large stable heap
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
Rover: a toolkit for mobile information access
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Building reliable mobile-aware applications using the Rover toolkit
MobiCom '96 Proceedings of the 2nd annual international conference on Mobile computing and networking
A new conflict relation for concurrency control and recovery in object-based databases
CIKM '96 Proceedings of the fifth international conference on Information and knowledge management
A concurrency control framework for collaborative systems
CSCW '96 Proceedings of the 1996 ACM conference on Computer supported cooperative work
Mobile Computing with the Rover Toolkit
IEEE Transactions on Computers - Special issue on mobile computing
Bounded Inconsistency for Type-Specific Concurrency Control
Distributed and Parallel Databases
Building reliable mobile-aware applications using the Rover toolkit
Wireless Networks - Special issue: mobile computing and networking: selected papers from MobiCom '96
Distributed version management for read-only actions (extended abstract)
Proceedings of the fourth annual ACM symposium on Principles of distributed computing
Design of Multi-Invariant Data Structures for Robust Shared Accesses in Multiprocessor Systems
IEEE Transactions on Software Engineering
Replication, reconfiguration, and the Argus mail repository
EW 2 Proceedings of the 2nd workshop on Making distributed systems work
Atomic data abstractions in a distributed collaborative editing system
POPL '86 Proceedings of the 13th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Fault-Tolerant Parallel Applications Using Queues and Actions
ICPP '97 Proceedings of the international Conference on Parallel Processing
Concurrency Features for the Trellis/Owl Language
ECOOP '87 Proceedings of the European Conference on Object-Oriented Programming
Using Metaobject Protocols to Implement Atomic Data Types
ECOOP '95 Proceedings of the 9th European Conference on Object-Oriented Programming
Fault Tolerance in Concurrent Object-Oriented Software through Coordinated Error Recovery
FTCS '95 Proceedings of the Twenty-Fifth International Symposium on Fault-Tolerant Computing
A concurrency control protocol for nested transactions
CASCON '92 Proceedings of the 1992 conference of the Centre for Advanced Studies on Collaborative research - Volume 2
Modular invariants for layered object structures
Science of Computer Programming - Special issue on source code analysis and manipulation (SCAM 2005)
Stasis: flexible transactional storage
OSDI '06 Proceedings of the 7th symposium on Operating systems design and implementation
Finding incorrect compositions of atomicity
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
Hi-index | 0.02 |
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.