Step 1: Express all quantities in powers of two
Page size = 4 KB = 4096 bytes = 212
Virtual address size = 57 bits
Page table entry (PTE) size = 8 bytes = 23
Step 2: Determine how many entries fit in one page table page
Number of PTEs per page:
212 / 23 = 29 entries
Thus, each page table level can be indexed using 9 bits.
Step 3: Determine how many bits must be indexed by page tables
The page offset consumes 12 bits.
Remaining bits used for translation:
57 − 12 = 45 bits
Step 4: Compute the number of levels
Each level accounts for 9 bits.
So the number of levels required is:
45 / 9 = 5
Final Answer:
Number of page table levels = 5