Struct tartan_arch::x86_common::paging::ControlRegister3
source · #[repr(transparent)]pub struct ControlRegister3(_);
Expand description
Implementations§
source§impl ControlRegister3
impl ControlRegister3
sourcepub fn write_through(&self) -> bool
pub fn write_through(&self) -> bool
CR3.PWT
: Enables write-through caching for the top-level page table.
Does not apply when ControlRegister4::process_context_ids
or
ControlRegister4::physical_address_extension
is enabled.
sourcepub fn cache_disabled(&self) -> bool
pub fn cache_disabled(&self) -> bool
CR3.PCD
: Disables caching for the top-level page table.
Does not apply when ControlRegister4::process_context_ids
or
ControlRegister4::physical_address_extension
is enabled.
sourcepub fn process_context_id(&self) -> u16
Available on x86-64 only.
pub fn process_context_id(&self) -> u16
CR4.PCIDE
: The process-context identifier (PCID) associated with this
series of page tables.
Requires 64-bit mode and ControlRegister4::process_context_ids
.
sourcepub fn set_write_through(&mut self, value: bool)
pub fn set_write_through(&mut self, value: bool)
CR3.PWT
: Enables write-through caching for the top-level page table.
Does not apply when ControlRegister4::process_context_ids
or
ControlRegister4::physical_address_extension
is enabled.
sourcepub fn with_write_through(&mut self, value: bool) -> Self
pub fn with_write_through(&mut self, value: bool) -> Self
CR3.PWT
: Enables write-through caching for the top-level page table.
Does not apply when ControlRegister4::process_context_ids
or
ControlRegister4::physical_address_extension
is enabled.
sourcepub fn set_cache_disabled(&mut self, value: bool)
pub fn set_cache_disabled(&mut self, value: bool)
CR3.PCD
: Disables caching for the top-level page table.
Does not apply when ControlRegister4::process_context_ids
or
ControlRegister4::physical_address_extension
is enabled.
sourcepub fn with_cache_disabled(&mut self, value: bool) -> Self
pub fn with_cache_disabled(&mut self, value: bool) -> Self
CR3.PCD
: Disables caching for the top-level page table.
Does not apply when ControlRegister4::process_context_ids
or
ControlRegister4::physical_address_extension
is enabled.
sourcepub fn set_process_context_id(&mut self, value: u16)
Available on x86-64 only.
pub fn set_process_context_id(&mut self, value: u16)
CR4.PCIDE
: The process-context identifier (PCID) associated with this
series of page tables.
Requires 64-bit mode and ControlRegister4::process_context_ids
.
sourcepub fn with_process_context_id(&self, value: u16) -> Self
Available on x86-64 only.
pub fn with_process_context_id(&self, value: u16) -> Self
CR4.PCIDE
: The process-context identifier (PCID) associated with this
series of page tables.
Requires 64-bit mode and ControlRegister4::process_context_ids
.
Trait Implementations§
source§impl Bitfield<usize> for ControlRegister3
impl Bitfield<usize> for ControlRegister3
source§impl Clone for ControlRegister3
impl Clone for ControlRegister3
source§fn clone(&self) -> ControlRegister3
fn clone(&self) -> ControlRegister3
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more