Nothing Special   »   [go: up one dir, main page]

Skip to main content

Name-Based Mapping: Addressing Support for Persistent Objects

  • Conference paper
Persistent Object Systems

Part of the book series: Workshops in Computing ((WORKSHOPS COMP.))

Abstract

Systems supporting persistent objects need to address far more information than can fit in an ordinary virtual memory. The usual approach is to impose an additional level of indirection—an object name is mapped to an object number, which serves as part of a virtual address. The virtual address can then be translated in the normal manner. An attractive alternative is name-based mapping, where objects are referred to by name rather than by address. A set of registers and a cache can be used to translate names directly to physical addresses, bypassing the virtual-address middleman. This scheme effectively removes the limit on the size of a process’s address space, since the number of possible names is essentially infinite. Name-based mapping has a number of other advantages. The cache, which cannot be modified by the programmer, is used to translate all addresses. It can therefore be used to enforce different protection domains within a single process. This permits software systems to be built out of larger but fewer processes, decreasing the overhead of managing large numbers of processes. In addition, name-based mapping removes the need for conventional static or dynamic linking. An architecture using name-based mapping can easily be adapted to support object-oriented languages efficiently. Unlike capability-based systems, name-based mapping requires only a special address-translation mechanism, rather than specially protected segments throughout memory. This paper presents the design and initial performance measurements based on simulation.

This research was supported by the Office of Naval Research under contract N00014-88-K-0037.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Atkinson, M. P., Bailey, P. J., Chisholm, K. J., Cockshott, P. W. and Morrison, R. “An approach to persistent programming.” Computer Journal, 26,4, November 1983, pp. 360–365.

    MATH  Google Scholar 

  2. Abramson, A. “Hardware management of a large virtual memory.” Proceedings of the Fourth Australian Computer Science Conference, Brisbane, May 11–13,1981, pp. 1–13.

    Google Scholar 

  3. Almes, G. T. “Garbage collection in an object-oriented system.” Ph.D. thesis, Department of Computer Science, Carnegie-Mellon University, June 1980. Available as technical report CMU-CS-80-128.

    Google Scholar 

  4. Bishop, P. B. “Computer systems with a very large address space and garbage collection.” Ph.D. thesis, Laboratory for Computer Science, Massachusetts Institute of Technology, May 1977. Available as technical report TR-178, MIT Laboratory for Computer Science.

    Google Scholar 

  5. Colwell, R. P., Gehringer, E. F. and Jensen, E. D. “Performance effects of architectural complexity in the Intel 432.” ACM Transactions on Computer Systems, 6,3, August 1988, pp. 296–339.

    Google Scholar 

  6. Cockshott, W. P. “Persistent programming and secure data storage.” Information and Software Technology, 29,5, June 1986, pp. 249–256.

    Article  Google Scholar 

  7. Dally, W. J. and Kajiya, J. T. “An object oriented architecture.” Proceedings of the 12th Annual International Symposium on Computer Architecture, Boston, June 1985, pp. 154–161.

    Google Scholar 

  8. Furht, B. and Milutinovic, V. “A survey of microprocessor architectures for memory management.” IEEE Computer, 20,3, March 1987,pp. 48–67.

    Article  Google Scholar 

  9. Goldberg, A. and Robson, D. Smalltalk 80: the Language and its Implementation. Addison-Wesley, 1983.

    Google Scholar 

  10. Harland, D. M. and Beloff, B. “OBJEKT: a persistent object store with an integrated garbage collector.” ACM SIGPLAN Notices, 22,4, April 1987, pp. 70–79.

    Article  Google Scholar 

  11. Houdek, M. E. and Mitchell, G. R. “Translating a large virtual address.” IBM System/38 Technical Developments, IBM General Systems Division, 1978, pp. 22–24. Also in Electronics, March 1979.

    Google Scholar 

  12. Huguet, M. “A C-oriented register set design.” Master’s thesis, Department of Computer Science, UCLA, June 1985. Available as Technical Report CSD-850019.

    Google Scholar 

  13. Huguet, M. and Lang, T. “A reduced register file for RISC architectures.” ACM Computer Architecture News, 13, 4, September 1985, pp. 22–31.

    Article  Google Scholar 

  14. Ishikawa, Y. and Tokoro, M. “The design of an object oriented architecture.” Proceedings of the 11th Annual Symposium on Computer Architecture, Ann Arbor, MI, June 1984, pp. 178–187.

    Google Scholar 

  15. Kaehler, T. “Virtual memory on a narrow machine for an object-oriented language.” OOPSLA’ 86: Object-Oriented Programming Systems, Languages, and Applications, Proceedings, Portland, OR, September 29-October 2, 1986, ACM SIGPLAN Notices, 21,11, pp. 87–106.

    Article  Google Scholar 

  16. Kaehler, T. and Krasner, G. “LOOM—large object-oriented memory for Smalltalk-80 systems.” In G. Krasner, ed., Smalltalk-80: Bits of History, Words of Advice, Addison-Wesley, 1983, pp. 251–270.

    Google Scholar 

  17. Keedy, J. L. “A comparison of two process-structuring models.” MONADS Report No. 4, Department of Computer Science, Monash University, 1979.

    Google Scholar 

  18. Nayak, S. and Gehringer, E. “Use of a method-lookup cache to support dynamic linking and information hiding.” Technical report TR-88-17, Computer Studies Program, North Carolina State University, August 1987.

    Google Scholar 

  19. Needham, R. M. and Lauer, H. C. “On the duality of operating system structures.” ACM Operating Systems Review, 13, 2, April 1979, pp. 3–19.

    Article  Google Scholar 

  20. Needham, R. M. and Walker, R. D. H. The Cambridge CAP Computer and its Operating System, North-Holland, 1979.

    Google Scholar 

  21. Organick, E. I. The Multics System: An Examination of its Structure. MIT Press, 1972.

    Google Scholar 

  22. Organick, E. I. A Programmer’s view of the Intel 432. McGraw-Hill, 1983.

    Google Scholar 

  23. Patterson, D. A. “Reduced instruction set computers.” Communications of the ACM, 28,1, January 1985, pp. 8–21.

    Article  Google Scholar 

  24. Peterson, J. L. and Silberschatz, A. Operating System Concepts, 2nd edition. Addison-Wesley, 1986.

    Google Scholar 

  25. Pollack, F. J., Cox, G. W., Hammerstrom, D. W., Kahn, K. C, Lai, K. K. and Rattner, J. R. “Supporting Ada memory management in the iAPX-432.” Proceedings of the Symposium on Architectural Support for Programming Languages and Operating Systems, (SIGARCH/SIGPLAN), Palo Alto, CA, March 1-3, 1982, ACM SIGPLAN Notices, 17,4, pp. 117–131.

    Google Scholar 

  26. Samples, D., Ungar, D. and Hilfinger, P. “SOAR: Smalltalk without bytecodes.” OOPSLA’ 86: Object-Oriented Programming Systems, Languages and Applications, Proceedings, September-October 1986, ACM SIGPLAN Notices, 21, 11, pp. 107–118.

    Article  Google Scholar 

  27. Thatte, S. M. “Report on the object-oriented database workshop: implementation aspects.” Technical report, Artificial Intelligence Laboratory, Texas Instruments, October 5, 1987.

    Google Scholar 

  28. Thakkar, S. S. and Knowles, A. E. “A high-performance memory management scheme.” IEEE Computer, 19, 5, May 1986, pp. 8–22.

    Google Scholar 

  29. Ungar, D. M. “The design and evaluation of a high performance Smalltalk system.” Ph.D. thesis, Computer Science Division, University of California, Berkeley, March 1986. Also available from MIT Press, 1986.

    Google Scholar 

  30. Wulf, W. A., Levin, R. and Harbison, S. P. HydralCmmp: an Experimental Computer System. McGraw-Hill, 1981.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 1990 British Computer Society

About this paper

Cite this paper

Gehringer, E.F. (1990). Name-Based Mapping: Addressing Support for Persistent Objects. In: Persistent Object Systems. Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3173-1_14

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-3173-1_14

  • Publisher Name: Springer, London

  • Print ISBN: 978-3-540-19626-6

  • Online ISBN: 978-1-4471-3173-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics