I'm reading about memory management in Operating System Concepts, by A. Silberschatz. The author says:[...] the user process by definition is unable to access memory it does not own.  It has no way of addressing memory outside of its page table, and the table  includes only those pages that the process owns.Then, the author explains the need of having a valid-invalid bit:One additional bit is generally attached to each entry in the page table: a validinvalid bit. When this bit is set to valid, the associated page is in the processs logical address space and is thus a legal (or valid) page. When the bit is set to invalid, the page is not in the processs logical address space.Why do we also need a valid-invalid bit, if a process is by definition able to access only memory addresses stored in its own page table?The two quoted sentences appear to be contradictory, in my opinion. There must be something I am missing here.This exact same question has been already asked a few times;however, none of the answers clarified my doubt. Source:Whats the purpose of having valid-invalid bits in page table?Valid-invalid bit in a process page tableWhat is the need for valid/invalid bit in paged memory technique?The answers that other users have given dont explain why the validity bit is needed to protect address spaces. The page table of a process contains only those pages that are valid for that process (i.e., that the process actually owns), so why do we need to replicate a security feature that is already present thanks to the way the page table is implemented?
Why do we need the valid-invalid bit in a page table?
operating systems;memory management;paging