Struct modulus::x64::memory::paging::Page
[−]
[src]
pub struct Page { // some fields omitted }
Methods
impl Page
[src]
fn new(number: u64) -> Self
fn virt_addr(&self) -> u64
fn p4_index(&self) -> u64
Returns index of page in P4 table
fn p3_index(&self) -> u64
Returns index of page in P3 table
fn p2_index(&self) -> u64
Returns index of page in P2 table
fn p1_index(&self) -> u64
Returns index of page in P1 table
fn map_page<T: FrameAlloc>(&self, address: u64, allocator: &mut T)
Create page tables and allocate page
This function walks through the page tables. If the next table is present, it jumps to it and continues. Otherwise, it allocates a frame and writes its address to the entry. Once it is done, it allocates the actual frame.