@InProceedings{roy:unixfile,
  author = {Paul J. Roy},
  title = {Unix File Access and Caching in a Multicomputer Environment},
  booktitle = {Proceedings of the Usenix {Mach III} Symposium},
  year = {1993},
  pages = {21--37},
  keywords = {multiprocessor file system, Unix, Mach, memory mapped file,
  pario-bib},
  comment = {Describes the modifications to the OSF/1 AD file system for a
  multicomputer environment. Goal is for normal Unix files, not supercomputer
  access. The big thing was separation of the caching from backing store
  management, by pulling out the cache management into the Extended Memory
  Management (XMM) subsystem. Normally OSF/1 maps files to Mach memory objects,
  which are then accessed (through read() and write()) using bcopy(). XMM makes
  it possible to access these memory objects from any node in the system,
  providing coherent compute-node caching of pages from the memory object. It
  uses tokens controlled by the XMM server at the file's server node to support
  a single-reader, single-writer policy on the whole file, but migrating page
  by page. They plan to extend to multiple writers, but atomicity constraints
  on the file pointer and metadata make it difficult. Files are NOT striped
  across file servers or I/O nodes. Several hacks were necessary to work around
  Mach interface problems. Unix buffer caching is abandoned. Future includes
  supercomputer support in the form of turning off all caching. No performance
  evaluation included. See zajcew:osf1.}
}

