pub struct MemoryDevice<'buffer> {
Show 36 fields pub handle: u16, pub physical_memory_handle: u16, pub memory_error_handle: Option<u16>, pub total_width: Option<u16>, pub data_width: Option<u16>, pub size: Option<u16>, pub form_factor: FormFactor, pub device_set: Option<u8>, pub device_locator: &'buffer str, pub bank_locator: &'buffer str, pub memory_type: Type, pub type_detail: Detail, pub speed: Option<u16>, pub manufacturer: &'buffer str, pub serial: &'buffer str, pub asset_tag: &'buffer str, pub part_number: &'buffer str, pub attributes: u8, pub extended_size: u32, pub configured_memory_speed: Option<u16>, pub minimum_voltage: Option<u16>, pub maximum_voltage: Option<u16>, pub configured_voltage: Option<u16>, pub memory_technology: Option<MemoryTechnology>, pub operating_mode_capability: Option<OperatingModes>, pub firmware_version: Option<&'buffer str>, pub module_manufacturer: Option<u16>, pub module_product_id: Option<u16>, pub memory_subsystem_controller_manufacturer_id: Option<u16>, pub memory_subsystem_controller_product_id: Option<u16>, pub non_volatile_size: Option<u64>, pub volatile_size: Option<u64>, pub cache_size: Option<u64>, pub logical_size: Option<u64>, pub extended_speed: Option<u32>, pub extended_configured_memory_speed: Option<u32>,
}
Expand description

The Memory Device 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: u16physical_memory_handle: u16memory_error_handle: Option<u16>total_width: Option<u16>

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

data_width: Option<u16>

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

size: Option<u16>

Size of the memory device. If the size is 32GB-1MB or greater, the field value is 7FFFh and the actual size is stored in the extended_size field.

form_factor: FormFactordevice_set: Option<u8>

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

device_locator: &'buffer str

Identifies the physically-labeled socket or board position where the memory device is located

bank_locator: &'buffer str

Identifies the physically labeled bank where the memory device is located

memory_type: Typetype_detail: Detailspeed: Option<u16>

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

manufacturer: &'buffer strserial: &'buffer strasset_tag: &'buffer strpart_number: &'buffer strattributes: u8extended_size: u32

Extended size of the memory device (complements the Size field)

configured_memory_speed: Option<u16>

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

minimum_voltage: Option<u16>

Minimum operating voltage for this device, in millivolts

maximum_voltage: Option<u16>

Maximum operating voltage for this device, in millivolts

configured_voltage: Option<u16>

Configured voltage for this device, in millivolts

memory_technology: Option<MemoryTechnology>

Memory technology type for this memory device

operating_mode_capability: Option<OperatingModes>

The operating modes supported by this memory device

firmware_version: Option<&'buffer str>module_manufacturer: Option<u16>

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

module_product_id: Option<u16>

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

memory_subsystem_controller_manufacturer_id: Option<u16>

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

memory_subsystem_controller_product_id: Option<u16>

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

non_volatile_size: Option<u64>

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

volatile_size: Option<u64>

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

cache_size: Option<u64>

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

logical_size: Option<u64>

Size of the Logical memory device in Bytes

extended_speed: Option<u32>

Identifies the maximum capable speed of the device, in megatransfers per second

extended_configured_memory_speed: Option<u32>

Identifies the configured speed of the memory device, in megatransfers per second

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Feeds this value into the given Hasher. Read more

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

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The resulting type after obtaining ownership.

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

🔬 This is a nightly-only experimental API. (toowned_clone_into)

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

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.