Linux – Page tables stored

linuxmemorymemory managementoperating systems

My question is "where are the page tables stored: in physical memory (RAM) or as some data structure in User space".

PS: What I have understood so far:
A process memory layout has few segments ( Code/data/heap/stack etc). Since segmentation is not used nowadays, Paging is used and each segment would have many fixed size pages. Each segment will also have corresponding Virtual Address space (VADs)..these will point to Primary page tables, which would point to secondary page tables and finally pte's that would point to page frames in disk(?? i hope this was correct). So then if VAD's are in user space then do page tables also reside in user space or they are stored in RAM ?

Best Answer

Page tables are handled by the kernel, via kernel internal data structures. But the architecture determines most of the format of those tables. Userland does not have any access to them.

Related Question