need to determine which blocks are still alive and which data is dead - clear out the old data so we can use the space  segment-by-segment basis
this may take place only when there is some minimum amount or no space left in free storage list.
a file consisting of a program's statements in c++ or another programming language.