A file system interface for concurrent access
Andrea H. Skarra, Herman Chung-Hwa Rao · 1994
The paper introduces a transparent service .for synchronized replication across loosely-connected, heterogeneous file systems, and it focuses on the part of the service that supports transactional synchronization. The transaction paradigm is useful for grouping together the file accesses in a program that are logically connected, such that each group of accesses is synchronized as an atomic unit. The service, Parrot, is implemented as a library that an application links and runs in its own address space. The library redefines and extends the file system interface open/close/read/write, while preserving its syntax and semantics. Parrot implements a read-one write-all synchronization protocol that (1) guarantees consistency across all copies of each replicated file at the granularity of individual read and write operations and (2) supports transactional synchronization for sequences of read and write operations on one or more files.