In Section 6.5.2, we discussed how virtual memory implemented through paging
adds an extra memory reference when accessing data. This time penalty is partially
alleviated by using a TLB to cache page table entries. However, even with a
high hit ratio in the TLB, this process still incurs translation overhead. Another
disadvantage of virtual memory and paging is the extra resource consumption
(the memory overhead for storing page tables). In extreme cases (very large programs),
the page tables may take up a significant portion of physical memory.
One solution offered for this latter problem is to page the page tables, which can