Transcription of Paging: Introduction
{{id}} {{{paragraph}}}
18 Paging: IntroductionIt is sometimes said that the operating system takes one of two approacheswhen solving most any space-management problem. The first approachis to chop things up intovariable-sizedpieces, as we saw withsegmenta-tionin virtual memory. Unfortunately, this solution has inherent difficul-ties. In particular, when dividing a space into different-size chunks, thespace itself can becomefragmented, and thus allocation becomes morechallenging over , it may be worth considering the second approach: to chop upspace intofixed-sizedpieces. In virtual memory, we call this ideapaging,and it goes back to an early and important system, the Atlas [KE+62, L78].Instead of splitting up a process s address space into some number ofvariable-sized logical segments ( , code, heap, stack), we divide it intofixed-sized units, each of which we call apage.
physical pages (modulo any sharing going on). Now, we know enough to perform an address-translation example. Let’s imagine the process with that tiny address space (64 bytes) is per-forming a memory access: movl <virtual address>, %eax Specifically, let’s pay attention to the explicit load of the data from
Domain:
Source:
Link to this page:
Please notify us if you found a problem with this document:
{{id}} {{{paragraph}}}