Valid But Not Present
A page table entry carries a valid bit and a present bit, and the hardware treats them differently:
PTE = AccessMemory(PTEAddr)
if (PTE.Valid == False)
RaiseException(SEGMENTATION_FAULT)
else if (PTE.Present == True)
TLB_Insert(VPN, PTE.PFN, PTE.ProtectBits); RetryInstruction()
else
RaiseException(PAGE_FAULT)
A process calls mmap for a 4 GB file on a machine with 8 GB of RAM, then writes one byte in the middle of the mapping. Which description matches what the bits say?
Sign in to answer questions and track your progress
Sign In