Struct smbioslib::SMBiosMemoryDevice[][src]

pub struct SMBiosMemoryDevice<'a> { /* fields omitted */ }

Memory Device (Type 17)

This structure describes a single memory device that is part of a larger [SMBiosPhysicalMemoryArray] (Type 16) structure.

Compliant with: DMTF SMBIOS Reference Specification 3.4.0 (DSP0134) Document Date: 2020-07-17

Implementations

impl<'a> SMBiosMemoryDevice<'a>[src]

pub fn physical_memory_array_handle(&self) -> Option<Handle>[src]

Handle, or instance number, associated with the [SMBiosPhysicalMemoryArray] to which this device belongs

pub fn memory_error_information_handle(&self) -> Option<Handle>[src]

Handle, or instance number, associated with any error that was previously detected for the device If the system does not provide the error information structure, the field contains FFFEh; otherwise, the field contains either FFFFh (if no error was detected) or the handle of the error-information structure ([SMBiosMemoryErrorInformation32] or [SMBiosMemoryErrorInformation64]).

pub fn total_width(&self) -> Option<u16>[src]

Total width, in bits, of this memory device, including any check or error-correction bits If there are no error-correction bits, this value should be equal to Data Width. If the width is unknown, the field is set to FFFFh.

pub fn data_width(&self) -> Option<u16>[src]

Data width, in bits, of this memory device A Data Width of 0 and a Total Width of 8 indicates that the device is being used solely to provide 8 error-correction bits. If the width is unknown, the field is set to FFFFh.

pub fn size(&self) -> Option<MemorySize>[src]

Size of the memory device

pub fn form_factor(&self) -> Option<MemoryFormFactorData>[src]

Implementation form factor for this memory device

pub fn device_set(&self) -> Option<u8>[src]

Identifies when the Memory Device is one of a set of Memory Devices that must be populated with all devices of the same type and size, and the set to which this device belongs A value of 0 indicates that the device is not part of a set; a value of FFh indicates that the attribute is unknown. NOTE: A Device Set number must be unique within the context of the Memory Array containing this Memory Device.

pub fn device_locator(&self) -> Option<String>[src]

Identifies the physically-labeled socket or board position where the memory device is located EXAMPLE: “SIMM 3”

pub fn bank_locator(&self) -> Option<String>[src]

Identifies the physically labeled bank where the memory device is located EXAMPLE: “Bank 0” or “A”

pub fn memory_type(&self) -> Option<MemoryDeviceTypeData>[src]

Type of memory used in this device

pub fn type_detail(&self) -> Option<MemoryTypeDetails>[src]

Additional detail on the memory device type

pub fn speed(&self) -> Option<MemorySpeed>[src]

The maximum capable speed of the device, in megatransfers per second (MT/s).

pub fn manufacturer(&self) -> Option<String>[src]

The manufacturer of this memory device

pub fn serial_number(&self) -> Option<String>[src]

The serial number of this memory device. This value is set by the manufacturer and normally is not changeable.

pub fn asset_tag(&self) -> Option<String>[src]

The asset tag of this memory device

pub fn part_number(&self) -> Option<String>[src]

The part number of this memory device. This value is set by the manufacturer and normally is not changeable.

pub fn attributes(&self) -> Option<u8>[src]

Bits 7-4: reserved Bits 3-0: rank Value=0 for unknown rank information

pub fn extended_size(&self) -> Option<u32>[src]

Extended size of the memory device (complements the Size field at offset 0Ch)

pub fn configured_memory_speed(&self) -> Option<MemorySpeed>[src]

Identifies the configured speed of the memory device, in megatransfers per second (MT/s). See 7.18.4 for details. 0000h = the speed is unknown FFFFh = the speed is 65,535 MT/s or greater, and the actual speed is stored in the Extended Configured Memory Speed field

pub fn minimum_voltage(&self) -> Option<u16>[src]

Minimum operating voltage for this device, in millivolts If the value is 0, the voltage is unknown.

pub fn maximum_voltage(&self) -> Option<u16>[src]

Maximum operating voltage for this device, in millivolts If the value is 0, the voltage is unknown.

pub fn configured_voltage(&self) -> Option<u16>[src]

Configured voltage for this device, in millivolts If the value is 0, the voltage is unknown.

pub fn memory_technology(&self) -> Option<MemoryDeviceTechnologyData>[src]

Memory technology type for this memory device.

pub fn memory_operating_mode_capability(
    &self
) -> Option<MemoryOperatingModeCapabilities>
[src]

The operating modes supported by this memory device.

pub fn firmware_version(&self) -> Option<String>[src]

The firmware version of this memory device.

pub fn module_manufacturer_id(&self) -> Option<u16>[src]

The two-byte module manufacturer ID found in the SPD of this memory device; LSB first.

pub fn module_product_id(&self) -> Option<u16>[src]

The two-byte module product ID found in the SPD of this memory device; LSB first.

pub fn memory_subsystem_controller_manufacturer_id(&self) -> Option<u16>[src]

The two-byte memory subsystem controller manufacturer ID found in the SPD of this memory device; LSB first.

pub fn memory_subsystem_controller_product_id(&self) -> Option<u16>[src]

The two-byte memory subsystem controller product ID found in the SPD of this memory device; LSB first.

pub fn non_volatile_size(&self) -> Option<MemoryIndicatedSize>[src]

Size of the Non-volatile portion of the memory device in Bytes, if any.

If the value is 0, there is no non-volatile portion.

pub fn volatile_size(&self) -> Option<MemoryIndicatedSize>[src]

Size of the Volatile portion of the memory device in Bytes, if any.

If the value is 0, there is no Volatile portion.

pub fn cache_size(&self) -> Option<MemoryIndicatedSize>[src]

Size of the Cache portion of the memory device in Bytes, if any.

If the value is 0, there is no Cache portion.

pub fn logical_size(&self) -> Option<MemoryIndicatedSize>[src]

Size of the Logical memory device in Bytes.

pub fn extended_speed(&self) -> Option<u32>[src]

Extended speed of the memory device (complements the Speed field at offset 15h). Identifies the maximum capable speed of the device, in megatransfers per second (MT/s).

pub fn extended_configured_memory_speed(&self) -> Option<u32>[src]

Extended configured memory speed of the memory device (complements the ‘configured_memory_speed’ field at offset 20h).

Identifies the configured speed of the memory device, in megatransfers per second (MT/s)

The ‘extended_speed’ and ‘extended_configured_memory_speed’ fields are intended to represent memory devices that operate faster than 65,535 MT/s, which cannot be described using the Speed or Configured Memory Speed fields. These fields are only meaningful if the value in the Speed or Configured Memory Speed fields are FFFFh. For compatibility with older SMBIOS parsers, memory devices slower than 65,535 MT/s should represent their speed using the Speed and Configured Memory Speed fields, leaving the Extended Speed and Extended Configured Memory Speed fields set to 0.

Bit 31 is reserved for future use and must be set to 0 Bits 30:0 represent the speed or configured memory speed of the device in MT/s.

Trait Implementations

impl Debug for SMBiosMemoryDevice<'_>[src]

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

Formats the value using the given formatter. Read more

impl<'a> SMBiosStruct<'a> for SMBiosMemoryDevice<'a>[src]

const STRUCT_TYPE: u8[src]

The SMBIOS structure type Read more

fn new(parts: &'a UndefinedStruct) -> Self[src]

Creates a new instance of the implementing SMBIOS type

fn parts(&self) -> &'a UndefinedStruct[src]

Contains the standard parts/sections of the implementing SMBIOS type.

impl Serialize for SMBiosMemoryDevice<'_>[src]

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error> where
    S: Serializer
[src]

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

impl<'a> RefUnwindSafe for SMBiosMemoryDevice<'a>

impl<'a> Send for SMBiosMemoryDevice<'a>

impl<'a> Sync for SMBiosMemoryDevice<'a>

impl<'a> Unpin for SMBiosMemoryDevice<'a>

impl<'a> UnwindSafe for SMBiosMemoryDevice<'a>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T

Notable traits for &'_ mut R

impl<'_, R> Read for &'_ mut R where
    R: Read + ?Sized
impl<'_, W> Write for &'_ mut W where
    W: Write + ?Sized
[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

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

Notable traits for &'_ mut R

impl<'_, R> Read for &'_ mut R where
    R: Read + ?Sized
impl<'_, W> Write for &'_ mut W where
    W: Write + ?Sized
[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

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

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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

Performs the conversion.