About
The task of fulfilling an allocation request consists of locating a block of unused memory of sufficient size.
Memory requests are satisfied by allocating portions from a large pool of memory called the heap or free store. At any given time, some parts of the heap are in use, while some are “free” (unused) and thus available for future allocations.