CONTENT | PREV | NEXT

2.2 Tracing Algorithmen

2.2.1 Mark-Sweep

  1. führe Tiefen- oder Breitensuche startend mit dem Root Set aus und markiere alle durch Referenzbeziehungen erreichbaren Objekte (Bitmap, Tabelle oder internes Bit)
  2. durchsuche ganzen Speicher nach unmarkierten Objekten und gib diese frei


heap objects

Probleme:

2.2.2 Mark-Compact

  1. markiere alle lebendigen Objekte (siehe Mark-Sweep)
  2. verschiebe alle markierten Objekte so, das ein kontinuierlicher, freier Speicherbereich entsteht (meist wird der gesamte Heap linear nach lebendigen Objekten abgesucht und ein gefundenes Objekt wird so verschoben, daß es direkter Nachbar des zuletzt verschobenen Objektes werden)

Vorteile gegenüber Mark-Sweep:

Probleme:


 
© 1999 sven.buergel@informatik.tu-chemnitz.de