Changes between Version 2 and Version 3 of Commentary/Rts/Storage/GC/RememberedSets


Ignore:
Timestamp:
Dec 4, 2009 2:37:34 PM (4 years ago)
Author:
simonmar
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Commentary/Rts/Storage/GC/RememberedSets

    v2 v3  
    8989== Remembered set maintenance during GC == 
    9090 
     91During GC, the principle of write barriers is quite similar: whenever we create an old-to-new pointer, we have to record it in the remembered set.  The GC achieves this as follows: 
     92 
     93 * The GC thread structure has a field `gc_thread->evac_gen` which specifies the desired destination generation. 
     94 * there is a flag `gc_thread->failed_to_evac`, which is set to true by `evacuate` if it did not manage to evacuate 
     95   the object into the desired generation. 
     96 * after scavenging an object, `scavenge_block` checks the `failed_to_evac` flag, (ToDO: continue)