Definition:

  • CPU —logical address MMU —physical address RAM
  • Maps Virtual Address to Physical Address
  • Implement Paging
  • The value in the relocation register is added to every address generated by a user process at the time it is sent to memory

Methods

Contiuous Memory Allocation (old method):
  • Each process contained in single contiguous section of memory
  • MMU maps logical address dynamically using base and limit registers
    • Base register contains value of smallest physical address
    • Limit register contains range of logical addresses
  • New process is allocated to memory from a large enough hole
  • Which hole to allocate:
    • First-fit: allocate first hole that is big enough
    • Best-fit: allocate the smallest hole that is big enough
      • Must search entire list
      • produces the smallest leftover holes
    • Worst-fit: allocate the largest hole
      • Must search entire list
      • Produces the largest leftover holes
  • Fragmentation issue:
    • external fragmentation: Total memory space exists to satisfy a request, but it is not contiguous
    • internal fragmentation: Allocated memory may be slightly larger than requested memory; this size difference is memory internal to a partition, but not being used, i.e., wasted