Designing and implementing a model of synchronization contracts in object-oriented languages

  • Authors:
  • R. E. Stirewalt;Karl Reimer Behrends

  • Affiliations:
  • -;-

  • Venue:
  • Designing and implementing a model of synchronization contracts in object-oriented languages
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

This thesis describes the design and implementation of a synchronization mechanism, called the universe model, that is based on declaratively specified contractual relationships between client and supplier components. These synchronization contracts not only specify basic mutual exclusion and semantic predicates, but also explicit logical composition of those basic contracts by boolean operators, and implicit composition to recombine contracts that have been decomposed in order to modularize them. Such contracts are negotiated implicitly and transparently by a runtime system that observes primitives. We present a classification scheme for synchronization contracts, and describe how they can be added to existing object-oriented languages by means of a simple declarative language that expresses these contracts. We also present an implementation of a runtime system that negotiates these synchronization contracts: It draws upon ideas from garbage collection and distributed databases, and adapts them to negotiate synchronization contracts in a fashion that avoids deadlocks and starvation where feasible. While the resulting algorithms are complex, we have implemented them and present empirical validation to show that this implementation is efficient.