On Object-Oriented Database Systems pp 257-273 | Cite as
Persistent Memory: A Storage System for Object-Oriented Databases
- 1 Citations
- 109 Downloads
Abstract
Object-oriented databases are needed to support database objects with a wide variety of types and structures. Object-oriented techniques, such as abstraction and inheritance mechanisms, which are widely used in symbolic processing, can be very useful in object-oriented databases. The advent of automatically managed, garbage-collected virtual memory was crucial to the development of today’s symbolic processing. No analogous capability has yet been developed in the domain of persistent objects managed by a file or database system. A persistent memory provides a storage system for long-term, reliable retention of objects with rich types and structures in virtual memory itself. Because no separate file system is assumed for long-term, reliable storage of objects, the system requires a crash recovery scheme at the level of virtual memory, which is a major contribution of the paper.
The persistent memory system is based on a uniform memory abstraction, which eliminates the distinction between transient objects (data structures) and persistent objects (files and databases), and therefore, allows the same set of powerful and flexible operations to be applied with equal efficiency on both transient and persistent objects from a programming language such as Lisp or Prolog. A persistent object manager implemented on top of the persistent memory manages named persistent objects with rich structure. It is expected that the persistent memory system will lead to significant simplifications in implementing applications such as object-oriented databases.
Keywords
Garbage Collection Virtual Memory Page Fault Dirty Page System CrashPreview
Unable to display preview. Download preview PDF.
References
- [ABLN85]Almes, G.T., Black, A.P., Lazowska, E.D., Noe, J.D.: “The Eden system: a technical review”, IEEE Trans. on Software Eng., SE-11 (1), pp. 43–59, January 1985.CrossRefGoogle Scholar
- [AbSu85]Abelson, H., Sussman, G.J.: “Structure and Interpretation of Computer Programs”, MIT Press, Cambridge, MA, 1985.Google Scholar
- [Atki83]Atkinson, M.P., Bailey, P.J., Chisholm, K.J., Cockshott, P.W., Morrison, R.: “An Approach to Persistent Programming”, The Computer Journal, Vol. 26, No. 4, pp. 360–365, December 1983.zbMATHGoogle Scholar
- [Atki84]Atkinson, M.P., Bailey, P.J., Cockshott, W.P., Chisholm, K.J., Morrison, R.: “Progress with Persistent Programming”, Technical Report ROR-8–84, Department of Computer Science, University of Edinburgh, Edinburgh, Scotland, February 1984.Google Scholar
- [BeCD69]Bensoussan, A., Clingen, C.T., Daley, R.C.: “The MULTICS Virtual Memory”, In: Proc. 2nd Symp. Operating Systems Principles, Princeton University, pp. 30–42, October 1969.Google Scholar
- [Bish77]Bishop, P.B.: “Computer Systems with a Very Large Address Space and Garbage Collection”, Technical Report TR-178, Laboratory for Computer Science, Cambridge, MA, May 1977.Google Scholar
- [Butl86]Butler, M.H.: “An Approach to Persistent LISP Objects”, In: Proc. COMPCON, IEEE, San Francisco, CA, pp. 324–329, March 1986.Google Scholar
- [Cock84]Cockshott, W., Atkinson, M., Chisholm, K., Bailey, P., Morrison, R.: “Persistent Object Management System”, Software Practice and Experience, 14, pp. 49–71, 1984.CrossRefGoogle Scholar
- [EGLT76]Eswaran, K.P., Gray, J.N., Lorie, R.A., Traiger, I.L.: “The Notions of Consistency and Predicate Locks in a Database System”, CACM, 19 (11), pp. 624–633, November 1976.zbMATHMathSciNetGoogle Scholar
- [HaMa85]Hartzband, D.J., Maryanski, F.J.: “Enhancing Knowledge Representation in Engineering Databases”, Computer, Vol. 18, No. 9, pp. 39–48, September 1985.CrossRefGoogle Scholar
- [Hero80]Herot, C.F.: “SDMS: Towards Spatial Data Management System”, ACM TODS, Vol. 5, No. 4, pp. 493–514, April 1980.CrossRefGoogle Scholar
- [IBM80]IBM General Systems Division: IBM System/38 Technical Developments, Technical Report G580–0237–1, IBM, July 1980.Google Scholar
- [Ki1b62]Jensen, K., Wirth, N.: Pascal: User Manual and Report, Springer-Verlag, New York, 1975.zbMATHGoogle Scholar
- [Lamp81]Lampson, B.W.: “Atomic Transactions”, In: Lampson, B.W., Paul, M., Siegert, H.J., (Eds.), Distributed Systems, chapter 11, Springer Verlag, New York, NY, 1981.Google Scholar
- [Loch86]Lochovsky, F., (Ed.): Database Engineering, Vol. 8, No. 4, Special Issue on Object-Oriented Systems, 1986.Google Scholar
- [Lori77]Lode, R.A.: “Physical Integrity in a Large Segmented Database”, ACM TODS, Vol. 2, No. 1, pp. 91–104, March 1977.CrossRefGoogle Scholar
- [McEn86]McEntee, T.J.: “An Overview of Garbage Collection in Symbolic Computing”, Texas Instruments Engineering Journal, 3 (1), pp. 130–139, January 1986.Google Scholar
- [McKe84]McKewon, D.M.: “Digital Cartography and Photo Interpretation from a Database Viewpoint”, In: Gardarin, G., Gelenbe, E., (Eds.), New Applications for Data Bases, Academic Press, pp. 19–42, 1984.Google Scholar
- [McMc81]McDonald, N., McNally, P.J.: “VGQF: Video Graphics Query Facility Database Design”, In: Proc. ACM-SIGMOD/SIGSMALL Workshop, pp. 96–101, 1981.Google Scholar
- [Mish84]Mishkin, N.: “Managing Permanent Objects”, Technical Report YALEU/DCS/RR-338, Department of Computer Science, Yale University, New Haven, CT, November 1984.Google Scholar
- [Moon84]Moon, D.A.: “Garbage Collection in a Large Lisp System”, In: Proc. 1984 ACM Symp. Lisp and Functional Programming, pp. 235–246, August 1984.Google Scholar
- [Myer82]Myers, G.J.: “Advances in Computer Architecture”, Wiley-Interscience, New York, NY, 2nd edition, 1982.zbMATHGoogle Scholar
- [Nier85a]Nierstrasz, O.M., “Hybrid: A Unified Object-Oriented System”, IEEE Database Engineering, Vol. 8, No. 4, pp. 49–57, December 1985.Google Scholar
- [OpDa81]Oppen, D.C., Dalai, Y.K.: “The Clearinghouse: A Decentralized Agent for Locating Named Objects in a Distributed Environment”, Technical Report OPD-T8103, Systems Development Department, Xerox Corporation, Palo Alto, CA, October 1981.Google Scholar
- [PoKW81]Pollack, F.J., Kahn, K.C., Wilkinson, R.M.: “The iMAX-432 Object Filing System”, In: Proc. 8th ACM Symp. Operating Systems Principles–ACM SIGOPS Operating Systems Review, ACM SIGOPS, Pacific Grove, CA, pp. 137–147, December 1981.Google Scholar
- [Reut80]Reuter, A.: “A fast Transaction-Oriented Logging Scheme for UNDO Recovery”, IEEE Trans. Software Eng., SE-6 (4), pp. 348–356, July 1980.Google Scholar
- [Sa1t78]Requicha, A., Voelcker, H.: “Solid Modeling: Current Status and Research Directions”, Computer Graphics and Applications, IEEE, October 1983.Google Scholar
- [StGu84]Stonebraker, M., Guttman, A.: “Using a Relational Database Management System for Computer Aided Design Data–an Update”, IEEE Database Engineering, Vol. 7, No. 2, pp. 56–60, June 1984.Google Scholar
- [Ston8lb]Stonebraker, M.R., Hanson, E., Hong, C.H.: “The Design of the POSTGRES Rules System”, IEEE Conference on Data Engineering, Los Angeles, CA, February 1987.Google Scholar
- [Texa85a]Texas Instruments Incorporated, Data Systems Group: EXPLORER Programming Concepts and Tools, Part No. 2243130–0001, May 1985.Google Scholar
- [Texa85b]Texas Instruments Incorporated, Data Systems Group: EXPLORER Technical Summary, Part No. 2243189–0001, May 985.Google Scholar
- [That85]Thatte, S.M.: “Persistent Memory for Symbolic Computers”, Technical Report TR–08–85–21, Central Research Laboratories, Texas Instruments Incorporated, Dallas, TX, July 1985.Google Scholar
- [That86]Thatte, S.M.: “Persistent Memory: Merging AI-knowledge and Databases”, Texas Instruments Engineering Journal, 3 (1), pp. 151–159, January 1986.Google Scholar
- [Trai82]Traiger, I.L.: “Virtual Memory Management for Database Systems”, ACM Operating System Review, 16, pp. 26–48, October 1982.CrossRefGoogle Scholar
- [Weis85]Weisner, S.P.: “An Object-Oriented Protocol for Managing Data”, Database Engineering, 8: 4, December 1985.Google Scholar
- [Xero83]Xerox Corporation: Xerox Interslip Reference Manual, October 1983.Google Scholar