Struct x86::paging::PML4Entry
[−]
[src]
pub struct PML4Entry { // some fields omitted }
Methods
impl PML4Entry
[src]
fn empty() -> PML4Entry
Returns an empty set of flags.
fn all() -> PML4Entry
Returns the set containing all flags.
fn bits(&self) -> u64
Returns the raw value of the flags currently stored.
fn from_bits(bits: u64) -> Option<PML4Entry>
Convert from underlying bit representation, unless that representation contains bits that do not correspond to a flag.
fn from_bits_truncate(bits: u64) -> PML4Entry
Convert from underlying bit representation, dropping any bits that do not correspond to flags.
fn is_empty(&self) -> bool
Returns true
if no flags are currently stored.
fn is_all(&self) -> bool
Returns true
if all flags are currently set.
fn intersects(&self, other: PML4Entry) -> bool
Returns true
if there are flags common to both self
and other
.
fn contains(&self, other: PML4Entry) -> bool
Returns true
all of the flags in other
are contained within self
.
fn insert(&mut self, other: PML4Entry)
Inserts the specified flags in-place.
fn remove(&mut self, other: PML4Entry)
Removes the specified flags in-place.
fn toggle(&mut self, other: PML4Entry)
Toggles the specified flags in-place.
impl PML4Entry
[src]
fn new(pdpt: PAddr, flags: PML4Entry) -> PML4Entry
Creates a new PML4Entry.
Arguments
pdpt
- The physical address of the pdpt table.flags
- Additional flags for the entry.
fn get_address(self) -> PAddr
Retrieves the physical address in this entry.
fn is_present(&self) -> bool
Is page present?
fn is_writeable(&self) -> bool
Read/write; if 0, writes may not be allowed to the 512-GByte region, controlled by this entry (see Section 4.6)
fn is_user_mode_allowed(&self) -> bool
User/supervisor; if 0, user-mode accesses are not allowed to the 512-GByte region controlled by this entry.
fn is_page_write_through(&self) -> bool
Page-level write-through; indirectly determines the memory type used to access the page-directory-pointer table referenced by this entry.
fn is_page_level_cache_disabled(&self) -> bool
Page-level cache disable; indirectly determines the memory type used to access the page-directory-pointer table referenced by this entry.
fn is_accessed(&self) -> bool
Accessed; indicates whether this entry has been used for linear-address translation.
fn is_instruction_fetching_disabled(&self) -> bool
If IA32_EFER.NXE = 1, execute-disable. If 1, instruction fetches are not allowed from the 512-GByte region.
Trait Implementations
impl Hash for PML4Entry
[src]
fn hash<__H: Hasher>(&self, __arg_0: &mut __H)
Feeds this value into the state given, updating the hasher as necessary.
fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher
1.3.0
Feeds a slice of this type into the state provided.
impl Ord for PML4Entry
[src]
fn cmp(&self, __arg_0: &PML4Entry) -> Ordering
This method returns an Ordering
between self
and other
. Read more
impl PartialOrd for PML4Entry
[src]
fn partial_cmp(&self, __arg_0: &PML4Entry) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
fn lt(&self, __arg_0: &PML4Entry) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
fn le(&self, __arg_0: &PML4Entry) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
fn gt(&self, __arg_0: &PML4Entry) -> bool
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
fn ge(&self, __arg_0: &PML4Entry) -> bool
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
impl Clone for PML4Entry
[src]
fn clone(&self) -> PML4Entry
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl Eq for PML4Entry
[src]
impl PartialEq for PML4Entry
[src]
fn eq(&self, __arg_0: &PML4Entry) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &PML4Entry) -> bool
This method tests for !=
.
impl Copy for PML4Entry
[src]
impl Debug for PML4Entry
[src]
impl BitOr for PML4Entry
[src]
type Output = PML4Entry
The resulting type after applying the |
operator
fn bitor(self, other: PML4Entry) -> PML4Entry
Returns the union of the two sets of flags.
impl BitXor for PML4Entry
[src]
type Output = PML4Entry
The resulting type after applying the ^
operator
fn bitxor(self, other: PML4Entry) -> PML4Entry
Returns the left flags, but with all the right flags toggled.
impl BitAnd for PML4Entry
[src]
type Output = PML4Entry
The resulting type after applying the &
operator
fn bitand(self, other: PML4Entry) -> PML4Entry
Returns the intersection between the two sets of flags.
impl Sub for PML4Entry
[src]
type Output = PML4Entry
The resulting type after applying the -
operator
fn sub(self, other: PML4Entry) -> PML4Entry
Returns the set difference of the two sets of flags.