Re: Paging - strange(?) problem
Posted: Tue Jul 22, 2014 10:59 pm
Can you spot the difference between 106000000 and 106000?PML4: 0x0000000106000003
// 0x106000 is pml4e->PhysAddr
The Place to Start for Operating System Developers
http://f.osdev.org/
Can you spot the difference between 106000000 and 106000?PML4: 0x0000000106000003
// 0x106000 is pml4e->PhysAddr
is the whole struct isn´t it?0x0000000106000003
It's not a struct; it's the physical address with the proviso that the last 12 bits of that address are always 0. Because of this they can be used as flags piggy-backed onto the address. So to get the address you take the number in the control register or page table entry and mask the last 12 bits to 0 .begin wrote:Butis the whole struct isn´t it?0x0000000106000003
So PhysAddr = 0x106000, Present-bit = 1, RW-bit = 1, everything else = 0... ?