[][src]Trait x86_64::structures::paging::mapper::MapperAllSizes

pub trait MapperAllSizes: Mapper<Size4KiB> + Mapper<Size2MiB> + Mapper<Size1GiB> {
    fn translate(&self, addr: VirtAddr) -> TranslateResult;

    fn translate_addr(&self, addr: VirtAddr) -> Option<PhysAddr> { ... }
}

This trait defines page table operations that work for all page sizes of the x86_64 architecture.

Required methods

fn translate(&self, addr: VirtAddr) -> TranslateResult

Return the frame that the given virtual address is mapped to and the offset within that frame.

If the given address has a valid mapping, the mapped frame and the offset within that frame is returned. Otherwise an error value is returned.

This function works with huge pages of all sizes.

Loading content...

Provided methods

fn translate_addr(&self, addr: VirtAddr) -> Option<PhysAddr>

Translates the given virtual address to the physical address that it maps to.

Returns None if there is no valid mapping for the given address.

This is a convenience method. For more information about a mapping see the translate method.

Loading content...

Implementors

impl<'a> MapperAllSizes for OffsetPageTable<'a>[src]

impl<'a> MapperAllSizes for RecursivePageTable<'a>[src]

impl<'a, P: PhysToVirt> MapperAllSizes for MappedPageTable<'a, P>[src]

Loading content...