Concurrent Maintenance of Data Structures in a Distributed Environment
- 1 January 1988
- journal article
- research article
- Published by Oxford University Press (OUP) in The Computer Journal
- Vol. 31 (2) , 165-174
- https://doi.org/10.1093/comjnl/31.2.165
Abstract
We consider a distributed system consisting of a collection of clients and servers in which each server runs on a processor dedicated to it. Each server can be viewed as an instance of an abstract data-type module that provides a set of facilities for its clients. In such systems it may be possible to improve the performance of a server by scheduling its housekeeping activities to occur during periods when the server is waiting for requests from clients or is transmitting a response to a client. We consider the case where the client requests are handled by a foreground process while the maintenance tasks are performed by one or more background processes. We illustrate how the code for these processes can be developed in a stepwise manner, proceeding from coarse-grained concurrency to fine-grained concurrency. This approach is augmented with the use of rely/guarantee conditions which serve to simplify the proof of non-interference. The method is illustrated using a search-table abstraction.Keywords
This publication has 0 references indexed in Scilit: