Base + Bound Register
Idea
- Two special privileged registers base and bound
- On each load or store:
- Calculate the physical address = virtual address + base
- Check 0 ≤ virtual address < bound else address ERROR
How to move process in memory?
Change base register
What happens on context switch?
OS must re-load base and bound register
Advantages
- Inexpensive in terms of hard ware
- Two registers
- Inexpensive in terms of cycles
- Add and compare in parallel
Disadvantages
- Growing a process is expensive
- No way to share code or data