Garbage Collection of Persistent Objects in Distributed Shared Memory

  • Conference paper
Persistent Object Systems

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

Abstract

This paper describes a garbage collection algorithm for distributed persistent objects in a loosely coupled network of workstations. Objects are accessed via a weakly consistent shared distributed virtual memory with recoverable properties. We address the specific problem of garbage collecting a large amount of distributed persistent objects, cached on several nodes for efficient sharing.

For clustering purposes, objects are allocated within segments, and segments are logically grouped into bunches. The garbage collection subsystem combines three sub-algorithms: the bunch garbage collector that cleans one bunch (possibly multiply-cached) independently of any other, the scion cleaner that propagates accessibility information across bunches, and the group garbage collector aimed at reclaiming inter-bunch cycles of dead objects.

These three sub-algorithms are highly independent. Thus, the garbage collection subsystem has a high degree of scalability and parallelism. On top of this, it reclaims cycles of garbage, it does not require any particular communication support such as causality or atomicity, and is well suited to large scale networks.

This work has been done within the framework of the ESPRIT Basic Research Action Broadcast 6360, and was partially supported by Digital Equipment Corporation.

Supported by a JNICT Fellowship of Program Ciência (Portugal). Also affiliated with Université Pierre et Marie Curie (Paris VI).

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

Access this chapter

Subscribe and save

Springer+ Basic
EUR 32.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
EUR 29.95
Price includes VAT (Germany)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
EUR 42.79
Price includes VAT (Germany)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
EUR 53.49
Price includes VAT (Germany)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free ship** 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. Andrew W. Appel, John R. Ellis, and Kai Li. Real-time concurrent collection on stock multiprocessors. In SIGPLAN’88 — Conference on Programming Language Design and Implementation, pages 11–20, Atlanta (USA), June 1988.

    Google Scholar 

  2. Brian N. Bershad and Matthew J. Zekauskas. The Midway distributed shared memory system. In Proceedings of the COMPCON’93 Conference, pages 528–537, February 1993.

    Google Scholar 

  3. D. I. Bevan. Distributed garbage collection using reference counting. In PARLE’87—Parallel Architectures and Languages Europe, number 259 in Lecture Notes in Computer Science, pages 117–187, Eindhoven (the Netherlands), June 1987. Springer-Verlag.

    Google Scholar 

  4. Hans-J. Boehm, Alan J. Demers, and Scott Shenker. Mostly parallel garbage collection. In Proc. of the SIGPLAN’91 Conf. on Programming Language Design and Implementation, pages 157–164, Toronto (Canada), June 1991. ACM.

    Google Scholar 

  5. E. Dijkstra, L. Lamport, A. J. Martin, C. S. Schölten, and E. F. M. Steffens. On-the-fly garbage collection: an exercise in cooperation. Comm. of the ACM, 21(11):966–975, November 1978.

    Article  MATH  Google Scholar 

  6. Paulo Ferreira and Marc Shapiro. Distribution and persistence in multiple and heterogeneous address spaces. In Proc. of the International Workshop on Object Orientation in Operating Systems, Ashville, North Carolina, (USA), December 1993. IEEE Comp. Society Press.

    Google Scholar 

  7. Paulo Ferreira and Marc Shapiro. Garbage collection and DSM consistency. In Proc. of the First Symposium on Operating Systems Design and Implementation (OSDI), Monterey, California (USA), November 1994. ACM.

    Google Scholar 

  8. Antony L. Hosking, J. Eliot B. Moss, and Darko Stefanoviè. A comparative performance evaluation of write barrier implementations. In Conf. on Object-Oriented Programming Systems, Languages, and Applications, volume 27 of SIGPLAN Notices, pages 92–109, Vancouver (Canada), October 1992. ACM Press.

    Google Scholar 

  9. Niels C. Juul. Comprehensive, Concurrent, and Robust Garbage Collection in the Distributed, Object-Based System Emerald. PhD thesis, Dept. of Computer Science, Univ. of Copenhagen, Denmark, February 1993.

    Google Scholar 

  10. Bett Koch, Tracy Schunke, Alan Dearie, Francis Vaughan, Chris Marlin, Ruth Fazakerley, and Chris Barter. Cache coherency and storage management in a persistent object system. In Proceedings of the Fourth International Workshop on Persistent Object Systems, pages 99–109, Martha’s Vineyard, MA (USA), September 1990.

    Google Scholar 

  11. R. Kordale, M. Ahamad, and J. Shilling. Distributed/concurrent garbage collection in distributed shared memory systems. In Proc. of the International Workshop on Object Orientation and Operating Systems, Ashville, North Carolina (USA), December 1993. IEEE Comp. Society Press.

    Google Scholar 

  12. David Kotz and Preston Crow. The expected lifetime of single-address-space operating systems. In Proceedings of SIGMETRICS’94, Nashville, Tennessee, (USA), May 1994. ACM Press.

    Google Scholar 

  13. Bernard Lang, Christian Queinnec, and José Piquer. Garbage collecting the world. In Proc. of the 19th Annual ACM SIGPLAN-SIGACT Symp. on Principles of Programming Lang., Albuquerque, New Mexico (USA), January 1992.

    Google Scholar 

  14. T. Le Sergent and B. Berthomieu. Incremental multi-threaded garbage collection on virtually shared memory architectures. In Proc. Int. Workshop on Memory Management, number 637 in Lecture Notes in Computer Science, pages 179–199, Saint-Malo (France), September 1992. Springer-Verlag.

    Google Scholar 

  15. Kai Li and Paul Hudak. Memory coherence in shared virtual memory systems. ACM Transactions on Computer Systems, 7(4):321–359, November 1989.

    Article  Google Scholar 

  16. Scott Nettles and James O’Toole. Real-time replication garbage collection. In Proceedings of the Conference on Programming Language Design and Implementation, pages 217–226, Albuquerque, N. Mexico, June 1993. ACM-SIGPLAN.

    Google Scholar 

  17. David Plainfossé. Distributed Garbage Collection and Reference Management in the Soul Object Support System. PhD thesis, Université Paris-6, Pierre-et-Marie-Curie, Paris (France), June 1994. Available from INRIA as TU-281, ISBN-2-7261-0849-0.

    Google Scholar 

  18. M. Satyanarayanan, Henry H. Mashburn, Puneet Kumar, David C. Steere, and James J. Kistler. Lightweight recoverable virtual memory. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 146–160, Asheville, NC (USA), December 1993.

    Google Scholar 

  19. Marc Shapiro, Peter Dickman, and David Plainfossé. SSP chains: Robust, distributed references supporting acyclic garbage collection. Rapport de Recherche 1799, Institut National de 1a Recherche en Informatique et Automatique, Roc-quencourt (France), nov 1992. Also available as Broadcast Technical Report #1.

    Google Scholar 

  20. David Ungar. Generation scavenging: A non-disruptive high performance storage reclamation algorithm. Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments, SIGPLAN Notices, 19(5):157–167, 1984.

    Google Scholar 

  21. B. Zorn. Comparing mark-and-sweep and stop-and-copy garbage collection. In Proc. 1990 ACM Conf. on Lisp and Functional Programming, pages 87–98, Nice, France, June 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1995 British Computer Society

About this paper

Cite this paper

Ferreira, P., Shapiro, M. (1995). Garbage Collection of Persistent Objects in Distributed Shared Memory. In: Atkinson, M., Maier, D., Benzaken, V. (eds) Persistent Object Systems. Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-2122-0_16

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-2122-0_16

  • Publisher Name: Springer, London

  • Print ISBN: 978-3-540-19912-0

  • Online ISBN: 978-1-4471-2122-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics

Navigation