Skip to main content

Larchant-RDOSS: A distributed shared persistent memory and its garbage collector

  • Conference paper
  • First Online:
Distributed Algorithms (WDAG 1995)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 972))

Included in the following conference series:

Abstract

Larchant-RDOSS is a distributed shared memory that persists on reliable storage across process lifetimes. Memory management is automatic: caching of data and of locks, coherence, collecting objects unreachable from the persistent root, writing reachable objects to disk, and reducing store fragmentation. Memory management is based on a novel garbage collection algorithm, that (i) approximates a global trace by a series of partial traces within dynamically determined subsets of the memory, (ii) causes no extra I/O or locking traffic, and (iii) needs no extra synchronization between the collector and the application processes. This results in a simple programming model, and expected minimal added application latency. The algorithm is designed for the most unfavorable environment (uncontrolled programming language, reference by pointers, non-coherent shared memory) and should work well also in more favorable settings.

Work conducted in part during sabbatical year at Cornell University, supported by funding from Cornell University, Isis Distributed Systems Inc., INRIA, and NATO.

With support from a JNICT Fellowship of Program Ciência (Portugal)

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Laurent Amsaleg, Michael Franklin, and Olivier Gruber. Efficient incremental garbage collection for workstation/server database systems. Rapport de Recherche RR-2409, Institut National de la Recherche en Informatique et Automatique, Rocquencourt (France), November 1994.

    Google Scholar 

  2. Andrew W. Appel, John R. Ellis, and Kai Li. Real-time concurrent garbage collection on stock multiprocessors. In Proc. Prog. Lang. Design and Implementation, pages 11–20, 1988.

    Google Scholar 

  3. M. P. Atkinson, P. J. Bailey, K. J. Chisholm, P. W. Cockshott, and R. Morrison. An approach to persistent programming. The Computer Journal, 26(4):360–365, 1983.

    Google Scholar 

  4. Özalp Babaoğlu and Keith Marzullo. Consistent Global States of Distributed Systems: Fundamental Concepts and Mechanisms, chapter 4, pages 55–93. Addison-Wesley, ACM Press, second edition edition, 1993.

    Google Scholar 

  5. Kenneth Birman, Andre Schiper, and Pat Stephenson. Lightweight causal and atomic group multicast. ACM Transactions on Computer Systems, 9(3):272–314, August 1991.

    Article  Google Scholar 

  6. Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 217–230, Asheville, NC (USA), December 1993.

    Google Scholar 

  7. Peter B. Bishop. Computer Systems with a Very Large Address Space and Garbage Collection. PhD thesis, Massachusetts Institute of Technology Laboratory for Computer Science, Cambridge, Mass. (USA), May 1977. Technical report MIT/LCS/TR-178.

    Google Scholar 

  8. Hans-Juergen Boehm and Mark Weiser. Garbage collection in an uncooperative environment. Software-Practice and Experience, 18(9):807–820, September 1988.

    Google Scholar 

  9. Jonathan E. Cook, Alexander L. Wolf, and Benjamin G. Zorn. Partition selection policies in object database garbage collection. In Proc. Int. Conf. on Management of Data (SIGMOD), pages 371–382, Minneapolis MN (USA), May 1994. ACM SIGMOD.

    Google Scholar 

  10. Damien Doligez and Xavier Leroy. A concurrent, generational garbage collector for a multithreaded implementation of ML. In Proc. of the 20th Annual ACM SIGPLAN-SIGACT Symp. on Principles of Programming Lang., pages 113–123, Charleston SC (USA), January 1993.

    Google Scholar 

  11. Paulo Ferreira and Marc Shapiro. Garbage collection and DSM consistency. In Proc. of the First Symposium on Operating Systems Design and Implementation (OSDI), pages 229–241, Monterey CA (USA), November 1994. ACM.

    Google Scholar 

  12. Olivier Gruber and Laurent Amsaleg. Object grouping in Eos. In Proc. Int. Workshop on Distributed Object Management, pages 184–201, Edmonton (Canada), August 1992.

    Google Scholar 

  13. Bett Koch, Tracy Schunke, Alan Dearle, 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 

  14. 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 

  15. 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 

  16. Umesh Maheshwari. Distributed garbage collection in a client-server, transactional, persistent object system. Technical Report MIT/LCS/TM-574, Mass. Inst. of Technology, Lab. for Comp. Sc., Cambridge, MA (USA), October 1993.

    Google Scholar 

  17. R. Morrison, M. P. Atkinson, A. L. Brown, and A. Dearle. Bindings in persistent programming languages. SIGPLAN Notices, 23(4):27–34, April 1988.

    Google Scholar 

  18. James O'Toole, Scott Nettles, and David Gifford. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 161–174, Asheville, NC (USA), December 1993.

    Google Scholar 

  19. Mendel Rosenblum and John K. Ousterhout. The design and implementation of a logstructured file system. ACM Transactions on Computer Systems, 10(1):26–52, February 1992.

    Article  Google Scholar 

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

    Google Scholar 

  21. Paul R. Wilson. Uniprocessor garbage collection techniques. In Proc. Int. Workshop on Memory Management, number 637 in Lecture Notes in Computer Science, Saint-Malo (France), September 1992. Springer-Verlag.

    Google Scholar 

  22. Paul R. Wilson and Sheetal V. Kakkad. Pointer swizzling at page fault time: Efficiently and compatibly supporting huge address spaces on standard hardware. In 1992 Int. Workshop on Object Orientation and Operating Systems, pages 364–377, Dourdan (France), October 1992. IEEE Comp. Society, IEEE Comp. Society Press.

    Google Scholar 

  23. V. Yong, J. Naughton, and J. Yu. Storage reclamation and reorganization in client-server persistent object stores. In Proc. of the Data Engineering Int. Conf., pages 120–133, Houston TX (USA), February 1994.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Jean-Michel Hélary Michel Raynal

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Shapiro, M., Ferreira, P. (1995). Larchant-RDOSS: A distributed shared persistent memory and its garbage collector. In: Hélary, JM., Raynal, M. (eds) Distributed Algorithms. WDAG 1995. Lecture Notes in Computer Science, vol 972. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0022148

Download citation

  • DOI: https://doi.org/10.1007/BFb0022148

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-60274-3

  • Online ISBN: 978-3-540-44783-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics