A page fault occurs when the CPU receives a valid memory address whose data is not currently in physical RAM. The fault signals the operating system to fetch the required page into memory. section 6.4.1 section 12.1
A page fault is normally recoverable rather than a sign of an illegal address. It belongs to the CPU’s fault and exception terminology, while a segmentation fault indicates that the requested address is illegal. section 12.1
The surrounding memory mechanism includes:
- Pages: fixed-size blocks of real memory, typically 4 KB on 64-bit operating systems. section 6.4.1
- Virtual memory: the address-space view presented to a program by the operating system. section 6.4.1
- Page tables: operating-system data structures that translate virtual addresses into real-memory addresses. section 6.4.1
- Swapping: moving a page temporarily stored on disk back into main memory when requested. section 6.4.1
A missing but valid page
A program accesses an address within its virtual address space. If the corresponding data is unavailable in physical RAM, the CPU raises a page fault; the operating system fetches the data into memory so execution can continue. section 12.1 section 6.4.1
Figure 12.1 A visual taxonomy of how the terms interrupt, exception, trap, and fault interact within Intel’s x86 family of CPUs. Note that signals do not appear within this figure. Signals are not interrupts.
Use the taxonomy figure to distinguish faults from traps, exceptions, interrupts, and signals in Intel’s x86 terminology. section 12.1

