Ownership types for flexible alias protection
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Concurrency and distribution in object-oriented programming
ACM Computing Surveys (CSUR)
Exclusion for composite objects
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Monitors: an operating system structuring concept
Communications of the ACM
A parameterized type system for race-free Java programs
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Software Component with ADA
Operating system principles
Concurrent Programming in Java. Second Edition: Design Principles and Patterns
Concurrent Programming in Java. Second Edition: Design Principles and Patterns
Ownership, encapsulation and the disjointness of type and effect
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A Multi-Granularity Locking Model for Concurrency Control in Object-Oriented Database Systems
IEEE Transactions on Knowledge and Data Engineering
Simple Ownership Types for Object Containment
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Concurrency Control in Nested Transactions with Enhanced Lock Models for KBMSs
DEXA '95 Proceedings of the 6th International Conference on Database and Expert Systems Applications
Hi-index | 0.00 |
We present a simple approach for implementing flexible locking strategies in a system of components, which may themselves be composite objects. The approach is flexible in that a developer can defer the distribution of locks in the system until deployment: the choice of lock type and granularity may therefore depend on the operating environment. We only consider exclusion control; this includes mutexes, read-write locks and read-write sets, but does not cover state-dependent locking or transaction-based approaches. In general we express exclusion requirements as sets of conflict pairs on component interfaces; elsewhere (Potter, Shanneb and Yu 2004) we have demonstrated the effectiveness of a general-purpose exclusion lock that can provide any required exclusion. We presume knowledge of the dependency between the interface of a composite object and its internal components.This work extends and simplifies the work on exclusion algebra for composite objects (Noble, Holmes and Potter 2000). Our major contribution is to distinguish between the control required internally and that provided externally. This clarifies the role of the so-called upward and downward mappings of the earlier work. We also offer a succinct mathematical basis for our model.