Locality
Temporal locality: Addresses that are referenced at some time Ts will be accessed in the near future (Ts + delta_time) with high probability. Example : Execution in a loop.
Spatial locality: Items whose addresses are near one another tend to be referenced close together in time. Example: Accessing array elements.
How can we exploit this characteristics of programs? Keep only the current locality in the main memory. Need not keep the entire program in the main memory.