Hardware and Control Structures

Two characteristics of paging and segmentation are the keys to this breakthrough:

  1. All memory references within a process are logical addresses that are dynamically translated into physical addresses at run time.

    → A process may be swapped in or out of main memory such that it occupies different regions of main memory at different times during the course of execution

  2. A process may be broken up into a number of pieces (pages or segments) and these pieces need not be contiguously located in main memory during execution

    → Combination of dynamic run-time address translation and the use of a page or segment table permits this

If these 2 characteristics are present, it is not necessary that all of the pages or segments of a process be in main memory during execution

Implications:

  1. More processes may be maintained in main memory
  2. A process may be larger than all of main memory

Locality and Virtual Memory

Thrashing

Operating System Software