This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
dev:rts:heap [2015/03/17 15:32] – [Sweep Phase] ursgraf | dev:rts:heap [2015/04/06 15:55] – [General Information] ursgraf | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Heap Manager and Garbage Collection ====== | ====== Heap Manager and Garbage Collection ====== | ||
===== General Information ===== | ===== General Information ===== | ||
- | Currently we support a simple mark & sweep algorithm. With this the mark phase must not be interrupted, | + | Currently we support a simple mark & sweep algorithm. With this the mark phase must not be interrupted, |
| | ||
===== Initialization ===== | ===== Initialization ===== | ||
Line 19: | Line 19: | ||
===== Sweep Phase ===== | ===== Sweep Phase ===== | ||
- | During the sweep phase the whole heap is traversed block by block. Each block, whether free, marked or no longer used has to include information about its size. Free blocks and blocks which contain actual objects have this information at the start of the block. With arrays this information has te be retrieved with the aid of the type descriptor. | + | During the sweep phase the whole heap is traversed block by block. Each block, whether free, marked or no longer used has to include information about its size. Free blocks and blocks which contain actual objects have this information at the start of the block. With arrays this information has to be retrieved with the aid of the type descriptor. |
[{{ .: | [{{ .: | ||