The page table as we have discussed it so far has
one entry for each page of logical memory. Flipping this idea on its head, the inverted page table has one entry
for each frame of physical memory. And, instead of storing a physical frame number, the inverted page table
stores a logical page number.
Since the number of frames of physical memory is likely to be much smaller than the number of pages of
logical memory in a 64-bit computer (with 4K pages, 252 = way too many logical pages to contemplate??”
millions of billions), the page table size remains reasonable.
Each entry in the inverted page table contains a process identifier and a logical page number. When
a process accesses memory, the system scans the inverted page table looking for a match of process ID and logical
page number. Since each entry in the inverted page table corresponds to a physical frame, when the system finds
a match, the index into the inverted page table becomes the frame number for the actual memory reference. For
instance, if a match occurs in the 53rd entry (entry 52, since the first entry is entry 0) of the inverted page table,
then the frame for physical memory is frame 52. The system adds the offset within the page to the frame number
of 52, and the physical address is complete.
Pages:
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333