Distributed garbage collection of active objects with no global synchronisation

  • Isabelle Puaut
Distributed Systems I
Part of the Lecture Notes in Computer Science book series (LNCS, volume 637)


This paper presents an algorithm to perform distributed garbage collection of objects possessing their own thread of control (active objects). The relevance of garbage collection in a system of active objects is briefly discussed. The collector is comprised of a collection of independent local collectors loosely coupled to a global collector. The mutator (application), the local collectors and the global garbage collector run concurrently. Distributed cycles of garbage are detected. The algorithm does not require that the communication channels be reliable: messages may be lost, duplicated, or may arrive out of order. Moreover, local collectors are only loosely synchronised to help detecting global garbage.


Active Object Garbage Collection Garbage Collector Local Collector Remote Reference 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Roger S. Chin and Samuel S. Chanson. Distributed object-based programming systems. ACM Computing Surveys, 23(1):91–124, March 1991.CrossRefGoogle Scholar
  2. 2.
    J. Cohen. Garbage collection of linked data structures. ACM Computing Surveys, 13(3):341–367, September 1981.CrossRefGoogle Scholar
  3. 3.
    A. Black, N. Hutchinson, E. Jul, H. Levy, and L. Carter. Distribution and abstract types in emerald. IEEE Transactions on Software Engineering, 13(1):65–76, January 1987.Google Scholar
  4. 4.
    M. Benveniste and V. Issarny. Arche: un langage parallèle à objets. Research report 642, IRISA, March 1992.Google Scholar
  5. 5.
    A. Yonezawa and M. Tokoro, editors. Object-Oriented Concurrent Programming. MIT Press Series in Computer Systems, 1987.Google Scholar
  6. 6.
    G. Agha. Actors: A Model of Concurrent Computation in Distributed Systems. MIT Press, 1986.Google Scholar
  7. 7.
    D. Kafura, D. M. Washabaugh, and J. Nelson. Garbage collection of actors. In Proc. of the 1990 ECOOP/OOPSLA Conference, pages 126–133, 1990.Google Scholar
  8. 8.
    P. Watson and I. Watson. An efficient garbage collection scheme for parallel computer architectures. In Proc. of Conf. PARLE, Volume 259 of Lecture Notes in Computer Science, pages 432–443, Eindhoven, 1987. Springer Verlag.Google Scholar
  9. 9.
    L. Augusteijn. Garbage collection in a distributed environment. In Proc. of Conf. PARLE, Volume 259 of Lecture Notes in Computer Science, pages 75–93, Eindhoven, 1987. Springer Verlag.Google Scholar
  10. 10.
    M. Schelvis. Incremental distribution of timestamp packets: A new approach to distributed garbage collection. In Proc. of 1989 OOPSLA Conference, pages 37–48, October 1989.Google Scholar
  11. 11.
    P. Hudak and R. M. Keller. Garbage collection and task deletion in distributed applicative processing systems. In Proc. of the ACM Conf. on LISP and Functional Programming, pages 168–178, 1982.Google Scholar
  12. 12.
    D. M. Washabaugh and D. Kafura. Distributed garbage collection of active objects. In icdcs11, pages 369–376, May 1991.Google Scholar
  13. 13.
    E. Jul, H. Levy, N. Hutchinson, and A. Black. Fine-grained mobility in the emerald system. ACM Transactions on Computer Systems, 6(1):109–133, February 1988.CrossRefGoogle Scholar
  14. 14.
    M. Shapiro, D. Plainfossé, and O. Gruber. A garbage detection protocol for a realistic distributed object-support system. Research report 1320, INRIA, November 1990.Google Scholar
  15. 15.
    B. Liskov and R. Ladin. Highly-available distributed services and fault-tolerant distributed garbage collection. In Proc. of 5th International Symposium on the Principles of Distributed Computing, pages 29–39, Alberta, Canada, August 1986.Google Scholar
  16. 16.
    J. Hughes. A distributed garbage collection algorithm. In Proc. ACM Conference on Functional Programming Languages and Computer Architecture, volume 201 of Lecture Notes in Computer Science, pages 256–272, Nancy (France), September 1985. Springer VerlagGoogle Scholar
  17. 17.
    K. M. Chandy and L. Lamport. Distributed snapshots: Determining global states of distributed systems. ACM Transactions on Computer Systems, 3(1):63–75, February 1985.CrossRefGoogle Scholar
  18. 18.
    F. Mattern. Virtual time and global states in distributed systems. In Proc. Int. Conf. on Parallel and Distributed Algorithms, pages 215–226. North-Holland Publishing, 1988.Google Scholar
  19. 19.
    C. J. Fidge. Timestamps in message-passing systems that preserves the partial ordering. In Proc. 11th Australian Comp. Conf., February 1988.Google Scholar
  20. 20.
    H. Lieberman and C. Hewitt. A real-time garbage collector based on the lifetimes of objects. Communications of the ACM, 26(6):419–429, June 1983.Google Scholar
  21. 21.
    Michel Banâtre, Yasmina Belhamissi, and Isabelle Puaut. Some features of gothic: a distributed object-based system. In 1992 International Workshop on Object-Orientation in Operating Systems (I-WOOOS '92), Paris, France, September 1992.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1992

Authors and Affiliations

  • Isabelle Puaut
    • 1
  1. 1.IRISA/INRIA Campus de BeaulieuRennes CédexFrance

Personalised recommendations