pub trait DirectPageTableEntry: GenericPageTableEntry {
Show 13 methods
// Provided methods
fn dirty(&self) -> bool { ... }
fn attribute_table(&self) -> bool { ... }
fn global(&self) -> bool { ... }
fn protection_key(&self) -> u8 { ... }
fn set_dirty(&mut self, value: bool) { ... }
fn with_dirty(&mut self, value: bool) -> Self { ... }
fn set_attribute_table(&mut self, value: bool) { ... }
fn with_attribute_table(&mut self, value: bool) -> Self { ... }
fn set_global(&mut self, value: bool) { ... }
fn with_global(&mut self, value: bool) -> Self { ... }
fn set_protection_key(&mut self, value: u8) { ... }
fn with_protection_key(&self, value: u8) -> Self { ... }
fn fmt_fields(&self, f: &mut DebugStruct<'_, '_>) { ... }
}
Expand description
An page table entry (any level) that directly maps a page.
Provided Methods§
Sourcefn dirty(&self) -> bool
fn dirty(&self) -> bool
D
: Set by the processor when an instruction modifies the memory region.
Sourcefn attribute_table(&self) -> bool
fn attribute_table(&self) -> bool
PAT
: Used to associate this page with a page attribute table.
In 32-bit mode, requires BasicFeatures::page_attribute_table
. Always
applicable in 64-bit mode.
Sourcefn global(&self) -> bool
fn global(&self) -> bool
G
: Indicates that this is a global page shared by all task contexts.
Requires ControlRegister4::global_pages
.
Sourcefn protection_key(&self) -> u8
Available on x86-64 only.
fn protection_key(&self) -> u8
The protection key that applies to this memory region.
Requires ControlRegister4::user_protection_keys
or
ControlRegister4::supervisor_protection_keys
.
Sourcefn set_dirty(&mut self, value: bool)
fn set_dirty(&mut self, value: bool)
D
: Set by the processor when an instruction modifies the memory region.
Sourcefn with_dirty(&mut self, value: bool) -> Self
fn with_dirty(&mut self, value: bool) -> Self
D
: Set by the processor when an instruction modifies the memory region.
Sourcefn set_attribute_table(&mut self, value: bool)
fn set_attribute_table(&mut self, value: bool)
PAT
: Used to associate this page with a page attribute table.
In 32-bit mode, requires BasicFeatures::page_attribute_table
. Always
applicable in 64-bit mode.
Sourcefn with_attribute_table(&mut self, value: bool) -> Self
fn with_attribute_table(&mut self, value: bool) -> Self
PAT
: Used to associate this page with a page attribute table.
In 32-bit mode, requires BasicFeatures::page_attribute_table
. Always
applicable in 64-bit mode.
Sourcefn set_global(&mut self, value: bool)
fn set_global(&mut self, value: bool)
G
: Indicates that this is a global page shared by all task contexts.
Requires ControlRegister4::global_pages
.
Sourcefn with_global(&mut self, value: bool) -> Self
fn with_global(&mut self, value: bool) -> Self
G
: Indicates that this is a global page shared by all task contexts.
Requires ControlRegister4::global_pages
.
Sourcefn set_protection_key(&mut self, value: u8)
Available on x86-64 only.
fn set_protection_key(&mut self, value: u8)
The protection key that applies to this memory region.
Requires ControlRegister4::user_protection_keys
or
ControlRegister4::supervisor_protection_keys
.
Sourcefn with_protection_key(&self, value: u8) -> Self
Available on x86-64 only.
fn with_protection_key(&self, value: u8) -> Self
The protection key that applies to this memory region.
Requires ControlRegister4::user_protection_keys
or
ControlRegister4::supervisor_protection_keys
.
Sourcefn fmt_fields(&self, f: &mut DebugStruct<'_, '_>)
fn fmt_fields(&self, f: &mut DebugStruct<'_, '_>)
Print this object’s bitfield values. Helper method for Debug
implementations.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.