Abstract
Decentralization of computing systems has several attractions: performance enhancements due to increased parallelism; resource sharing; and the increased reliability and availability of data due to redundant copies of the data. Providing these characeristics in a decentralized system requires proper organization of the system. With respect to increasing th e reliability of a system, one model which has proven successful is the object/action model, where tasks performed by the system are organizaed as sequences of atomic operations. the system can determine which operations have been performed comopletely and so maintain the system in a consistent state.
This dissertation describes the design and a prototype implementation of a storage management system for an object-oriented, action-based decentralized kernel. The storage manager is responsible for providing reliable secondary storage structures. First, the dissertation shows how the object model is supported at the lowest levels in the kernel by the storage manager. it also describes how storage management facilities are integrated into the virtual memory management provided by the kernel to support the mapping of objects into virtual memory. All input and output to secondary storage is done via virtual memory management. This dissertation discusses the role of the storage management system in locating objects, and a technique intended to short circuit searches whenever possible by avoiding unnecessary secondary storage queries at each site. It also presents a series of algorithms which support two-phase commit of atomic actions and then argues that these algorithms do indeed provide consistent recovery of object datd. These algorithms make use of virtual memory management information to provide recovery, and relieve the action management system of the maintenance of the stable storage.