Department of Computer Science and Technology

Technical reports

The Entity System: an object based filing system

Stephen Christopher Crawley

April 1986, 120 pages

This technical report is based on a dissertation submitted December 1985 by the author for the degree of Doctor of Philosophy to the University of Cambridge, St John’s College.

DOI: 10.48456/tr-86


Developments in programming languages have provided increasingly powerful facilities for algorithmic and data abstraction. Concepts such as record declarations and formal type checking have been developed by languages such as Pascal and Algol 68, while languages such as Simula 67 and Smalltalk supported object based type systems. Until recently, however, very little work has been done on extending data typing concepts beyond a single program, where I/O is typically performed by reading and writing data as an untyped stream of characters.

By contrast, database systems have traditionally taken a data and file based approach to storing complex data, and address the problems of many programs using the same data, while handing changing data descriptions and access requirements. Recently attention has been focussed on extending data typing beyond the bounds of a single program. The DTL language [Hughes 83] models a program as a data transformer which converts one typed data stream into another, while PS-Algol extends a representational type system by allowing data in the heap to persist from one run of a program to the next. None of these, however, really address the issues of evolving programs and data requirements.

In order to build the desired functionality in programming environments, the file system needs to provide considerably more functionality, by joining together the components of a modular program, and supporting both small and large components efficiently. Finally a mechanism was needed for ensuring that files were treated consistently. The term entity is used to describe an object held in the file system, which are modelled as a collection of strongly typed attributes with abstract interfaces. This thesis describes the experience gained in constructing such a system and the requirements of an effective persistent storage system.

Full text

PDF (6.5 MB)

BibTeX record

  author =	 {Crawley, Stephen Christopher},
  title = 	 {{The Entity System: an object based filing system}},
  year = 	 1986,
  month = 	 apr,
  url = 	 {},
  institution =  {University of Cambridge, Computer Laboratory},
  doi = 	 {10.48456/tr-86},
  number = 	 {UCAM-CL-TR-86}