Garbage Collection

  • Peter Sestoft
Part of the Undergraduate Topics in Computer Science book series (UTICS, volume 50)


Heap-allocation and garbage collection are not specific to abstract machines, but has finally become accepted in the mainstream thanks to the Java Virtual Machine and the Common Language Infrastructure/.NET.


Garbage Collection Abstract Machine Java Virtual Machine Garbage Collector Mark Phase 
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.


  1. 1.
    Bacon, D.F.: Realtime garbage collection. ACM Queue 5(1), 40–49 (2007) CrossRefGoogle Scholar
  2. 2.
    Bacon, D.F., Cheng, P., Rajan, V.: A real-time garbage collector with low overhead and consistent utilization. In: Thirtieth ACM Symposium on Principles of Programming Languages, pp. 285–298. ACM, New York (2003) Google Scholar
  3. 3.
    Bloch, J.: Effective Java Programming Language Guide, 2nd edn. Addison-Wesley, Reading (2008) Google Scholar
  4. 4.
    Boehm, H.: A garbage collector for C and C++. At
  5. 5.
    Boehm, H., Weiser, M.: Garbage collection in an uncooperative environment. In: Software Practice & Experience, pp. 807–820 (1988) Google Scholar
  6. 6.
    Cheney, C.: A nonrecursive list compacting algorithm. Commun. ACM 13(11), 677–678 (1970) zbMATHCrossRefGoogle Scholar
  7. 7.
    Detlefs, D., Flood, C., Heller, S., Printezis, T.: Garbage-first garbage collection. In: Fourth International Symposium on Memory Management, pp. 37–48. ACM, New York (2004) CrossRefGoogle Scholar
  8. 8.
    Dijkstra, E.W.: On-the-fly garbage collection: an exercise in multiprocessing. Tech. Rep. EWD492 (1975). At
  9. 9.
    Ecma International: Common Language Infrastructure (CLI). Standard ECMA-335, 5th edn. (2010). At
  10. 10.
    Gudeman, D.: Representing type information in dynamically typed languages. Tech. Rep. TR 93-27, Department of Computer Science, University of Arizona (1993) Google Scholar
  11. 11.
    Gupta, V.: Notes on the CLR garbage collector. Blog entry (2007). At
  12. 12.
    Jones, R.: The garbage collection bibliography. Web site (2009). At
  13. 13.
    Jones, R., Lins, R.: Garbage Collection: Algorithms for Automatic Dynamic Memory Management. Wiley, New York (1996) zbMATHGoogle Scholar
  14. 14.
    Lieberman, H., Hewitt, C.: A real-time garbage collector based on the lifetimes of objects. Commun. ACM 26(6), 419–429 (1983) CrossRefGoogle Scholar
  15. 15.
    McCarthy, J.: Recursive functions of symbolic expressions. Commun. ACM 3(4), 184–195 (1960) zbMATHCrossRefGoogle Scholar
  16. 16.
    McCarthy, J., et al.: Lisp 1.5 Programmer’s Manual. MIT Press, Cambridge (1962) Google Scholar
  17. 17.
    Microsystems, S.: Memory management in the Java Hotspot virtual machine. Whitepaper (2006) Google Scholar
  18. 18.
    Mono project: At
  19. 19.
    Oracle: What is the garbage-first garbage collector? Web page (2009). At
  20. 20.
    Printezis, T., Detlefs, D.: A generational mostly-concurrent garbage collector. In: Second international Symposium on Memory Management, pp. 143–154. ACM, New York (2000). At CrossRefGoogle Scholar
  21. 21.
    Sestoft, P.: The garbage collector used in Caml Light (1994). At
  22. 22.
    Sperber, M., Dybvig, R.K., Flatt, M., van Straaten, A. (eds.): Revised [6] Report on the Algorithmic Language Scheme. Cambridge University Press, Cambridge (2010) Google Scholar
  23. 23.
    Wilson, P.: Uniprocessor garbage collection techniques. Tech. rep., University of Texas (1994). Draft available as

Copyright information

© Springer-Verlag London 2012

Authors and Affiliations

  • Peter Sestoft
    • 1
  1. 1.IT University of CopenhagenCopenhagenDenmark

Personalised recommendations