This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | Next revision Both sides next revision | ||
cs330_f2016:lab14 [2016/11/15 18:47] morse |
cs330_f2016:lab14 [2016/11/15 18:48] morse |
||
---|---|---|---|
Line 56: | Line 56: | ||
Continue this process until you've scanned everything that's been copied over and the scan pointer catches up with the free pointer. | Continue this process until you've scanned everything that's been copied over and the scan pointer catches up with the free pointer. | ||
- | |||
---- | ---- | ||
+ | |||
+ | ====Notes:==== | ||
+ | |||
+ | - Address 0 is intentionally not used and a reference with value = 0 should be taken as a NULL pointer | ||
+ | - Use the "Interpretation" column for your own notes, but all necessary information must be in the heap contents, not this column! | ||
+ | - For mark-and-sweep, you should "sweep" blocks by marking them as free and adding the length of the entire block (including header) and a next pointer. | ||
+ | - Insert new free blocks at the head of the free list. | ||
+ | - For stop-and-copy, you will need to maintain your on "scan" pointer during the copying process. | ||
+ | - For stop-and-copy, you need to fill in the "tospace", but you also need to show changes to the "fromspace". | ||
+ | - For stop-and-copy, you must use Cheney's algorithm, so the live blocks must be copied in the correct depth-first order. | ||
+ | |||
===Hints:=== | ===Hints:=== |