Project

General

Profile

=begin
= GC design

See attached image.

== Heap data structure

  • ObjectSpace can contains several heaps (now, has only `eden')
  • A Heap contains pagse.
  • A Page contains slots.
  • A Slot represents Ruby's object. This is also known as RVALUE.

== GC strategy

=== Conservertive GC

See http://en.wikipedia.org/wiki/Garbage_collection_%28computer_science%29#Precise_vs._conservative_and_internal_pointers

=== RGenGC

  • This is a type of generational.
  • Can combine with pre-tenuring.

=== Marking technique

  • Non-recursive marking
  • Bitmap marking

=== Sweeping technique

  • Lazy sweeping

=end