Quiz submission record for quiz2-1-1 at Mon Jun 28 01:14:50 2004: Your Answer for Question 1: b and c. when there is no free block, malloc will request a new large area of storage, and use all of it or part of it. If it uses all of the new storage area, the number of free blocks will be unchanged. If it only uses part of the storage area, the rest is linked to the free list, hence increase the number of free blocks. Your Answer for Question 2: b and d If there is only one adjacent block next to the free block, they may be combined, hence the number of free blocks is unchanged. If the free block is combined with more than 1 adjacent block, the number of free blocks may be reduced by 2 or more. Your Answer for Question 3: "new" is the Java equivalent to "malloc" in C and "delete" operator is equivalent to "free" in C. We don't want to build an automatic memory allocation / deallocation system for C because we want more complete control and customizations from C. Your Answer for Question 4: This structure is a circular structure. Hence, it can not be reclaimed using the reference count method. Since circular structure is a form of graph traversal, we can use mark and sweep method to reclaimed the space. We mark the objects as we tranverse as reachable objects, all others are garbage and may be freed. Your Answer for Question 5: The codes are quite hard to understand. I found the concepts quite interesting. Garbage collection is an interesting subject. However, i'll have to read it a few more time to fully understand it. Your unique submission ID is quiz2-1-1-cs61c-bx-1088410490-2742.