Struct MonitorMwaitInfo
pub struct MonitorMwaitInfo {
pub(crate) eax: u32,
pub(crate) ebx: u32,
pub(crate) ecx: u32,
pub(crate) edx: u32,
}
Expand description
Fields§
§eax: u32
§ebx: u32
§ecx: u32
§edx: u32
Implementations§
§impl MonitorMwaitInfo
impl MonitorMwaitInfo
pub fn smallest_monitor_line(&self) -> u16
pub fn smallest_monitor_line(&self) -> u16
Smallest monitor-line size in bytes (default is processor’s monitor granularity)
§Platforms
✅ AMD ✅ Intel
pub fn largest_monitor_line(&self) -> u16
pub fn largest_monitor_line(&self) -> u16
Largest monitor-line size in bytes (default is processor’s monitor granularity
§Platforms
✅ AMD ✅ Intel
pub fn extensions_supported(&self) -> bool
pub fn extensions_supported(&self) -> bool
Enumeration of Monitor-Mwait extensions (beyond EAX and EBX registers) supported
§Platforms
✅ AMD ✅ Intel
pub fn interrupts_as_break_event(&self) -> bool
pub fn interrupts_as_break_event(&self) -> bool
Supports treating interrupts as break-event for MWAIT, even when interrupts disabled
§Platforms
✅ AMD ✅ Intel
pub fn supported_c0_states(&self) -> u16
pub fn supported_c0_states(&self) -> u16
Number of C0 sub C-states supported using MWAIT (Bits 03 - 00)
§Platforms
❌ AMD (undefined/reserved) ✅ Intel
pub fn supported_c1_states(&self) -> u16
pub fn supported_c1_states(&self) -> u16
Number of C1 sub C-states supported using MWAIT (Bits 07 - 04)
§Platforms
❌ AMD (undefined/reserved) ✅ Intel
pub fn supported_c2_states(&self) -> u16
pub fn supported_c2_states(&self) -> u16
Number of C2 sub C-states supported using MWAIT (Bits 11 - 08)
§Platforms
❌ AMD (undefined/reserved) ✅ Intel
pub fn supported_c3_states(&self) -> u16
pub fn supported_c3_states(&self) -> u16
Number of C3 sub C-states supported using MWAIT (Bits 15 - 12)
§Platforms
❌ AMD (undefined/reserved) ✅ Intel
pub fn supported_c4_states(&self) -> u16
pub fn supported_c4_states(&self) -> u16
Number of C4 sub C-states supported using MWAIT (Bits 19 - 16)
§Platforms
❌ AMD (undefined/reserved) ✅ Intel
pub fn supported_c5_states(&self) -> u16
pub fn supported_c5_states(&self) -> u16
Number of C5 sub C-states supported using MWAIT (Bits 23 - 20)
§Platforms
❌ AMD (undefined/reserved) ✅ Intel
pub fn supported_c6_states(&self) -> u16
pub fn supported_c6_states(&self) -> u16
Number of C6 sub C-states supported using MWAIT (Bits 27 - 24)
§Platforms
❌ AMD (undefined/reserved) ✅ Intel
pub fn supported_c7_states(&self) -> u16
pub fn supported_c7_states(&self) -> u16
Number of C7 sub C-states supported using MWAIT (Bits 31 - 28)
§Platforms
❌ AMD (undefined/reserved) ✅ Intel
Trait Implementations§
§impl Debug for MonitorMwaitInfo
impl Debug for MonitorMwaitInfo
§impl PartialEq for MonitorMwaitInfo
impl PartialEq for MonitorMwaitInfo
impl Eq for MonitorMwaitInfo
impl StructuralPartialEq for MonitorMwaitInfo
Auto Trait Implementations§
impl Freeze for MonitorMwaitInfo
impl RefUnwindSafe for MonitorMwaitInfo
impl Send for MonitorMwaitInfo
impl Sync for MonitorMwaitInfo
impl Unpin for MonitorMwaitInfo
impl UnwindSafe for MonitorMwaitInfo
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
§impl<T> Conv for T
impl<T> Conv for T
§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self
to use its Binary
implementation when Debug
-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self
to use its Display
implementation when
Debug
-formatted.§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self
to use its LowerExp
implementation when
Debug
-formatted.§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self
to use its LowerHex
implementation when
Debug
-formatted.§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self
to use its Octal
implementation when Debug
-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self
to use its Pointer
implementation when
Debug
-formatted.§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self
to use its UpperExp
implementation when
Debug
-formatted.§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self
to use its UpperHex
implementation when
Debug
-formatted.§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self
, then passes self.as_ref()
into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self
, then passes self.as_mut()
into the pipe
function.§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self
, then passes self.deref()
into the pipe function.§impl<T> Pointee for T
impl<T> Pointee for T
§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B>
of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B>
of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R>
view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R>
view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target
of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target
of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow()
only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref()
only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut()
only in debug builds, and is erased in release
builds.§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref()
only in debug builds, and is erased in release
builds.