struct LoaderPhysMapper;Expand description
Loader mapper: treat low physical memory frames as directly accessible.
§Safety
Valid only in the UEFI loader context where those frames are mapped.
Trait Implementations§
Source§impl PhysMapper for LoaderPhysMapper
 
impl PhysMapper for LoaderPhysMapper
Source§unsafe fn phys_to_mut<T>(&self, at: PhysicalAddress) -> &mut T
 
unsafe fn phys_to_mut<T>(&self, at: PhysicalAddress) -> &mut T
Map a 4 KiB physical frame and get a mutable reference to type 
T. Read moreAuto Trait Implementations§
impl Freeze for LoaderPhysMapper
impl RefUnwindSafe for LoaderPhysMapper
impl Send for LoaderPhysMapper
impl Sync for LoaderPhysMapper
impl Unpin for LoaderPhysMapper
impl UnwindSafe for LoaderPhysMapper
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
 
impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
 
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> PhysMapperExt for Twhere
    T: PhysMapper,
 
impl<T> PhysMapperExt for Twhere
    T: PhysMapper,
Source§fn pml4_mut(&self, page: PhysicalPage<Size4K>) -> &mut PageMapLevel4
 
fn pml4_mut(&self, page: PhysicalPage<Size4K>) -> &mut PageMapLevel4
Borrow the 
PageMapLevel4 (PML4) located in the given 4 KiB
physical frame. Read moreSource§fn set_pml4(&self, page: PhysicalPage<Size4K>, pml4: PageMapLevel4)
 
fn set_pml4(&self, page: PhysicalPage<Size4K>, pml4: PageMapLevel4)
Sets the provided 
PageMapLevel4 at the specified page.Source§fn zero_pml4(&self, page: PhysicalPage<Size4K>)
 
fn zero_pml4(&self, page: PhysicalPage<Size4K>)
Sets the provided 
PageMapLevel4 at the specified page.Source§fn pdpt_mut(&self, page: PhysicalPage<Size4K>) -> &mut PageDirectoryPointerTable
 
fn pdpt_mut(&self, page: PhysicalPage<Size4K>) -> &mut PageDirectoryPointerTable
Borrow a 
PageDirectoryPointerTable (PDPT) located in the given 4 KiB
physical frame. Read moreSource§fn set_pdpt(&self, page: PhysicalPage<Size4K>, pml4: PageDirectoryPointerTable)
 
fn set_pdpt(&self, page: PhysicalPage<Size4K>, pml4: PageDirectoryPointerTable)
Sets the provided 
PageDirectoryPointerTable at the specified page.Source§fn zero_pdpt(&self, page: PhysicalPage<Size4K>)
 
fn zero_pdpt(&self, page: PhysicalPage<Size4K>)
Sets the provided 
PageDirectoryPointerTable at the specified page.Source§fn pd_mut(&self, page: PhysicalPage<Size4K>) -> &mut PageDirectory
 
fn pd_mut(&self, page: PhysicalPage<Size4K>) -> &mut PageDirectory
Borrow a 
PageDirectory (PD) located in the given 4 KiB
physical frame. Read moreSource§fn set_pd(&self, page: PhysicalPage<Size4K>, pml4: PageDirectory)
 
fn set_pd(&self, page: PhysicalPage<Size4K>, pml4: PageDirectory)
Sets the provided 
PageDirectory at the specified page.Source§fn zero_pd(&self, page: PhysicalPage<Size4K>)
 
fn zero_pd(&self, page: PhysicalPage<Size4K>)
Sets the provided 
PageDirectory at the specified page.