operating-systems

Definition

Page Table

A page table is a data structure used in paging to store mappings between a process’s logical addresses and physical addresses in RAM.

Each entry (PTE) typically contains:

  • Frame Number: Physical location of the page
  • Present Bit: Indicates if page is in RAM (see Virtual Memory)
  • Modified Bit (Dirty Bit): Indicates if page has been written to
  • Protection Bits: Read, write, or execute permissions

Architectures

Multilevel Page Tables

Multilevel Page Tables

For large address spaces, the table is broken into multiple levels (hierarchical paging), allowing parts of the page table to be swapped to disk.

Inverted Page Tables

Inverted Page Tables

One global table with one entry per physical frame:

  • Entry Structure: Stores PID and page number residing in the frame
  • Address Translation: Uses hashing or associative search to find PID/page pair; index corresponds to physical frame number
  • Efficiency: Reduces memory usage as table size depends on physical RAM, not sum of all processes’ virtual spaces

Performance

Accessing the page table adds an extra memory reference per data access. Hardware uses a TLB to cache recently used mappings.