- make partition when process input come
- Each process is allocated exactly as much memory as it requires
- Has external fragment (hole is external with no internal)
- Use compaction to shift processes to free memory by external (less use by i/o problem)
Compaction is possible only if relocation is dynamic, and is done at execution time
I/O problem - Do I/O only into Operating System buffers
Possible algorithms of placement
- Best-fit - The fragment as small as possible
- First-fit
- Next-fit: choose first hole from last placement
- Worst-fit: allocate the largest hole
Overlays - choose memory layout by program call graph to efficient memory distribute by function module code