Memory management is the act of managing computer memory in order to optimize the use of it. This might mean arranging used and free memory to speed access or to maximize available storage space.

All reasonably modern operating systems contain their own memory manager, which takes care of this on behalf of the user. A critical performace bottleneck is disk swapping, and the quality of the memory manager can have a big impact on overall system performance.

DOS-era hackers might remember the memory manager software EMM386 and QEMM, the pain of segmented memory, the 640 kb barrier, and high and upper memory.

See also: virtual memory, pointer, handle, reference (computer science)