In the 64-bit version of Linux, IA-32E paging used with 4 levels of paging structures ( PML4 / PDPT / PD / PT ). The entries in the previous three structures give the physical address of the corresponding next structure. My question is, will the physical addresses of all these swap structures be displayed in the swap table? If they are displayed, in what mode ( User / Supervisor )? Thank you very much!
I captured some specific memory addresses that a vcpu for a period in KVM . These addresses are in the form of gfn (guest number of the physical frame). I wanted to say whether these gfns displayed in the kernel or in user space. So I looked at the guest swap table (virtual machine) to find out how to match the entries in the corresponding table table with these gfns . See my previous question here .
I found that the physical addresses of some paging structures are displayed in the paging table, and some are not. That is, the physical addresses of some paging structures (such as the PT address specified by the PDE parameter) do not have corresponding PTE in the page table. Since I changed the KVM memory mechanism a lot, I'm afraid that maybe this phenomenon is caused by my code or maybe something is wrong with my page transition code.
So, I want to know in normal Linux how these materials are processed.
Many thanks!
source share