Quiz submission record for quiz2-1-1 at Mon Jun 28 00:49:30 2004: Your Answer for Question 1: a. False. the space malloc allocates does not alwahys fill up an entire free block, in which case the smaller free block results in the same number of free blocks b. True. see a. c. False. the only way malloc could create two free blocks is by allocating a space in the middle of an existing free block. However, it always points to the first elemsnt of a free block, which cannot create more free blocks Your Answer for Question 2: a. False. If free frees a block of memory adjacent to an existing free block, the two merge into a single free block, resulting in the same number of free blocks. b. True. see a. c. True. if free frees up a block that is between two existing free blocks, the three blocks are merged into one, which results in one fewer free block than before d. False. The situation in c. is the only way that free can result in fewer free blocks Your Answer for Question 3: malloc in c -> new in java free in c -> delete in java i am not totally sure why, but i believe that higher languages like java are built upon low-level code like c, so the automated memory management system in java is actually coded in the c language Your Answer for Question 4: I do not totally understand wheter the upper-left block is the root of the program or whether the whole system is a linked list, but i will assume that it is a root. reference count will not reclaim anything because each node(except the root) has a pointer pointing to it. mark and sweep will not reclaim anything because traversing the program from the root will hit every block, so nothing will be deleted. Your Answer for Question 5: I dont totally understand parallel garbage collection I also am not sure of my understanding of the buddy allocation system. Your unique submission ID is quiz2-1-1-cs61c-am-1088408970-85.