Skip to main content

Processor

Struct Processor 

Source
pub struct Processor<'buffer> {
Show 23 fields pub handle: u16, pub socket_designation: &'buffer str, pub processor_type: ProcessorType, pub processor_family: ProcessorFamily, pub processor_manufacturer: &'buffer str, pub processor_id: u64, pub processor_version: &'buffer str, pub voltage: Voltage, pub external_clock: u16, pub max_speed: u16, pub current_speed: u16, pub status: ProcessorStatus, pub processor_upgrade: ProcessorUpgrade, pub l1_cache_handle: Option<u16>, pub l2_cache_handle: Option<u16>, pub l3_cache_handle: Option<u16>, pub serial_number: Option<&'buffer str>, pub asset_tag: Option<&'buffer str>, pub part_number: Option<&'buffer str>, pub core_count: Option<u16>, pub core_enabled: Option<u16>, pub thread_count: Option<u16>, pub processor_characteristics: Option<ProcessorCharacteristics>,
}
Expand description

The Processor table defined in the SMBIOS specification.

Optional fields will only be set if the version of the parsed SMBIOS table is high enough to have defined the field.

Fields§

§handle: u16§socket_designation: &'buffer str

String number for Reference Designation EXAMPLE: ‘J202’,0

§processor_type: ProcessorType

Processor Type field

§processor_family: ProcessorFamily

Processor Family field

§processor_manufacturer: &'buffer str

String number of Processor Manufacturer

§processor_id: u64

Raw processor identification data

§processor_version: &'buffer str

String number describing the Processor

§voltage: Voltage

Voltage

§external_clock: u16

External Clock Frequency, in MHz. If the value is unknown, the field is set to 0.

§max_speed: u16

Maximum processor speed (in MHz) supported by the system for this processor socket

§current_speed: u16

This field identifies the processor’s speed at system boot; the processor may support more than one speed.

§status: ProcessorStatus

Status

§processor_upgrade: ProcessorUpgrade

Processor Upgrade field

§l1_cache_handle: Option<u16>

Handle of a Cache Information structure that defines the attributes of the primary (Level 1) cache for this processor

§l2_cache_handle: Option<u16>

Handle of a Cache Information structure that defines the attributes of the secondary (Level 2) cache for this processor

§l3_cache_handle: Option<u16>

Handle of a Cache Information structure that defines the attributes of the tertiary (Level 3) cache for this processor

§serial_number: Option<&'buffer str>

String number for the serial number of this processor

§asset_tag: Option<&'buffer str>

String number for the asset tag of this processor

§part_number: Option<&'buffer str>

String number for the part number of this processor

§core_count: Option<u16>

Number of cores per processor socket

§core_enabled: Option<u16>

Number of enabled cores per processor socket

§thread_count: Option<u16>

Number of threads per processor socket

§processor_characteristics: Option<ProcessorCharacteristics>

Defines which functions the processor supports

Trait Implementations§

Source§

impl<'buffer> Clone for Processor<'buffer>

Source§

fn clone(&self) -> Processor<'buffer>

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<'buffer> Debug for Processor<'buffer>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'buffer> Hash for Processor<'buffer>

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl<'buffer> PartialEq for Processor<'buffer>

Source§

fn eq(&self, other: &Processor<'buffer>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<'buffer> Eq for Processor<'buffer>

Source§

impl<'buffer> StructuralPartialEq for Processor<'buffer>

Auto Trait Implementations§

§

impl<'buffer> Freeze for Processor<'buffer>

§

impl<'buffer> RefUnwindSafe for Processor<'buffer>

§

impl<'buffer> Send for Processor<'buffer>

§

impl<'buffer> Sync for Processor<'buffer>

§

impl<'buffer> Unpin for Processor<'buffer>

§

impl<'buffer> UnsafeUnpin for Processor<'buffer>

§

impl<'buffer> UnwindSafe for Processor<'buffer>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.