So do we need to keep the empty page table entries in memory?

No, they will never be used so why keep them in memory. Lets just keep the one's we need.

Multi-Level Page Table Implementation:

A multi-level page table system (on a 20 bit system with 4kb pages) works as follows:

The Virtual address is now divided slightly differently.

There are two page table indexes

The first page index is used to index the outer page table.

Each entry in the outer page table can possibly point to a second level page table.

The present bit in the outer page table is used to indicate if there is a second level page table for this entry.

The second page index is used to index the second level page table pointed to by the outer page table.

The entry of the second level page table might contain the page frame number of the desired page.

If the present bit of the second level page table indicates the presence or absence of a page in the physical memory.

If the present bit is a 1 then the page frame number is contained in the entry.

If the present bit is a 0 then a page fault occurs and the virtual page must be brought into the physical memory.

In a 32 bit system the virtual address might be broken up as follows:


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: