Answer from cs61c-bx (Tuan Ha 16989532) 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.