Questions: Virtual Address Translation: Paging and TLBs

5 questions to test your understanding

Score: 0 / 5
Question 1 Multiple Choice

A system uses 4 KB pages (12-bit offset) and 32-bit virtual addresses. A process references virtual address 0x00005200. The page table shows that virtual page 5 maps to physical frame 17. What is the physical address?

A0x00005200 — virtual and physical addresses are the same after a TLB lookup
B0x00011200 — frame 17 × 4096 + offset 0x200
C0x00011000 — frame 17 × 4096, with the offset discarded after translation
DCannot be determined without knowing whether the TLB contains this entry
Question 2 Multiple Choice

Why do modern 64-bit operating systems use multi-level page tables instead of a single flat page table per process?

AFlat page tables cannot store permission bits like read/write/execute
BA flat page table for a 64-bit address space would require terabytes of memory per process, most of it wasted on unmapped regions
CMulti-level tables allow the TLB to cache more entries simultaneously
DFlat page tables only support 32-bit virtual addresses
Question 3 True / False

On a TLB hit, the CPU is expected to still access main memory once to verify the cached translation has not been invalidated.

TTrue
FFalse
Question 4 True / False

The page offset portion of a virtual address is identical to the page offset in the resulting physical address.

TTrue
FFalse
Question 5 Short Answer

Why do TLB hit rates typically exceed 99% even though the TLB holds only a few dozen to a few hundred entries — a tiny fraction of a process's virtual address space?

Think about your answer, then reveal below.