Block Reuse Quiz

Trace the representation, diagnose a boundary failure, and reconstruct a changed case.


Get every question correct to pass this checkpoint. You can review feedback, revise your answers, and submit again.

1. The reuse allocator has blocks [40 free, 24 used, 72 free]. Two requests of 32 arrive. Which capacities are selected? Select one.

Select one answer.

2. A 96-byte free block serves a 20-byte request without splitting. Which stored capacity should remain? Select one.

Select one answer.

3. Two threads both see the same free block before either marks it used. Why is an atomic list head alone insufficient? Select one.

Select one answer.

4. A free block has capacity 48. A request for 49 arrives. Can that block satisfy it without growth or merging? Answer yes or no.
5. A free 72-byte block is the first fit. Two calls to find_free_block(32) occur with no intervening allocation. What should happen? Select one.

Select one answer.

6. Blocks are [16 free,64 used,16 free]. Can a request of 24 be served without growth, splitting, or moving live data? Answer yes or no.
7. No free block fits and the growth helper fails. Which state is correct? Select one.

Select one answer.

Join Discord