Struct kernel_hal::PageTable[][src]

#[repr(C)]pub struct PageTable { /* fields omitted */ }

Page Table

Implementations

impl PageTable[src]

#[export_name = "hal_pt_current"]pub fn current() -> Self[src]

Get current page table

#[export_name = "hal_pt_new"]pub fn new() -> Self[src]

Create a new PageTable.

Trait Implementations

impl PageTableTrait for PageTable[src]

#[export_name = "hal_pt_map"]fn map(
    &mut self,
    _vaddr: VirtAddr,
    _paddr: PhysAddr,
    _flags: MMUFlags
) -> Result<()>
[src]

Map the page of vaddr to the frame of paddr with flags.

#[export_name = "hal_pt_unmap"]fn unmap(&mut self, _vaddr: VirtAddr) -> Result<()>[src]

Unmap the page of vaddr.

#[export_name = "hal_pt_protect"]fn protect(&mut self, _vaddr: VirtAddr, _flags: MMUFlags) -> Result<()>[src]

Change the flags of the page of vaddr.

#[export_name = "hal_pt_query"]fn query(&mut self, _vaddr: VirtAddr) -> Result<PhysAddr>[src]

Query the physical address which the page of vaddr maps to.

#[export_name = "hal_pt_table_phys"]fn table_phys(&self) -> PhysAddr[src]

Get the physical address of root page table.

Auto Trait Implementations

impl RefUnwindSafe for PageTable

impl Send for PageTable

impl Sync for PageTable

impl Unpin for PageTable

impl UnwindSafe for PageTable

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.