Garbage Collection (computer Science) - Principles

Principles

The basic principles of garbage collection are:

  1. Find data objects in a program that cannot be accessed in the future
  2. Reclaim the resources used by those objects

Many computer languages require garbage collection, either as part of the language specification (e.g., Java, C#, and most scripting languages) or effectively for practical implementation (e.g., formal languages like lambda calculus); these are said to be garbage collected languages. Other languages were designed for use with manual memory management, but have garbage collected implementations available (e.g., C, C++). Some languages, like Ada, Modula-3, and C++/CLI allow both garbage collection and manual memory management to co-exist in the same application by using separate heaps for collected and manually managed objects; others, like D, are garbage collected but allow the user to manually delete objects and also entirely disable garbage collection when speed is required. While integrating garbage collection into the language's compiler and runtime system enables a much wider choice of methods, post hoc GC systems exist, including some that do not require recompilation. (Post-hoc GC is sometimes distinguished as litter collection.) The garbage collector will almost always be closely integrated with the memory allocator.

Read more about this topic:  Garbage Collection (computer Science)

Famous quotes containing the word principles:

    When great changes occur in history, when great principles are involved, as a rule the majority are wrong.
    Eugene V. Debs (1855–1926)

    The proclamation and repetition of first principles is a constant feature of life in our democracy. Active adherence to these principles, however, has always been considered un-American. We recipients of the boon of liberty have always been ready, when faced with discomfort, to discard any and all first principles of liberty, and, further, to indict those who do not freely join with us in happily arrogating those principles.
    David Mamet (b. 1947)

    I have ever deemed it fundamental for the United States never to take active part in the quarrels of Europe. Their political interests are entirely distinct from ours. Their mutual jealousies, their balance of power, their complicated alliances, their forms and principles of government, are all foreign to us. They are nations of eternal war.
    Thomas Jefferson (1743–1826)