Expand description

SMBIOS Library

Implements the DMTF System Management BIOS (SMBIOS) Reference Specification 3.4.0.

This library focuses on the tasks involved with reading and interpreting BIOS data.

Modules

Utilities for formatting and printing Strings.

Filesystem manipulation operations.

Traits, helpers, and type definitions for core I/O functionality.

Structs

System Event Log - Access Method Data

Additional Information Entry contained within SMBiosAdditionalInformation

Electrical Current Probe Location and Status

Baseboard Features

BIOS Characteristics

BIOS Characteristics Extension Byte 0

BIOS Characteristics Extension Byte 1

BIOS Language Flags

Board Type Data

Cache Associativity Data

System Cache Configuration

Contained Chassis Element

Chassis Security Status Data

Chassis State Data

Chassis Type Data

Connections

Contained Elements

Cooling Device Type and Status

Electrical Current Probe Location and Status

Defined Struct Table

Memory Module Error Correcting Capabilities Iterator

Memory Controller Error Correcting Capability

System Cache Error Correction Type Data

Memory Controller Error Detecting Method Data

System Event Log Type Descriptor

Group Association Item contained within SMBiosGroupAssociations

Structure Handle

Hardware Security Settings

SMBIOS Header

System Event Log - Header Format Data

Management Controller Host Interface Type Data

Management Controller Host Interface - Protocol Types Data

Memory Controller Information — Interleave Support Data

Baseboard Management Controller (BMC) interface type data

Load/Handle Pair contained within SMBiosMemoryChannel

Iterates over the LoadHandlePair entries contained within SMBiosMemoryChannel

System Event Log - Log Status

System Event Log - Log Type Data

Management Device — Address Type Data

Management Device - Type Data

Memory Array - Error Correction Types Data

Memory Array - Location Data

Memory Array - Use Data

Memory Channel — Channel Type Data

Memory Device — Memory Technology Data

Memory Device - Type Data

Memory Error - Error Granularity Data

Memory Error - Error Operation Data

Memory Error - Error Type Data

Memory Device — Form Factor Data

Memory Device — Memory Operating Mode Capability

Memory Controller Information — Memory Speeds

Memory Device — Type Detail

Memory Module Information: Memory Types

Memory Module Handle Iterator

Memory Module Voltage

Object Handle Iterator

On Board Device entry within SMBiosOnBoardDeviceInformation

On-board Device Itereator for OnBoardDevices contained within SMBiosOnBoardDeviceInformation

On Board Device Type

Built-in Pointing Device Interface Data

Built-in Pointing Device Type Data

Port Information - Connector Types Data

Portable Battery - Device Chemistry Data

Power Supply Characteristics

Processor Architecture Types Data

Processor Characteristics

Processor Family Data

Processor Family Data #2

Processor Specific Block contained within SMBiosProcessorAdditionalInformation

Processor Socket and CPU Status

Processor Supported Voltages

Processor Type Data

Protocol Record Data contained within SMBiosManagementControllerHostInterface

Additional Information (Type 40)

Baseboard (or Module) Information (Type 2)

BIOS Language Information (Type 13)

Boot Integrity Services (BIS) (Type 31)

Built-in Pointing Device (Type 21)

Cache Information (Type 7)

Cooling Device (Type 27)

SMBIOS Data

Electrical Current Probe (Type 29)

End-of-Table (Type 127)

SMBIOS 2.1 (32 bit) Entry Point structure

SMBIOS 3.0 (64 bit) Entry Point structure

Group Associations (Type 14)

Hardware Security (Type 24)

Inactive (Type 126)

BIOS Information (Type 0)

IPMI Device Information (Type 38)

Management Controller Host Interface (Type 42)

Management Device (Type 34)

Management Device Component (Type 35)

Management Device Threshold Data (Type 36)

Memory Array Mapped Address (Type 19)

Memory Channel (Type 37)

Memory Controller Information (Type 5, Obsolete)

Memory Device (Type 17)

Memory Device Mapped Address (Type 20)

32-Bit Memory Error Information (Type 18)

64-Bit Memory Error Information (Type 33)

Memory Module Information (Type 6, Obsolete)

OEM Strings (Type 11)

On Board Devices Information (Type 10, Obsolete)

Onboard Devices Extended Information (Type 41)

Out-of-Band Remote Access (Type 30)

Physical Memory Array (Type 16)

Port Connector Information (Type 8)

Portable Battery (Type 22)

Processor Additional Information (Type 44)

Processor Information (Type 4)

System Boot Information (Type 32)

System Enclosure or Chassis (Type 3)

System Configuration Options (Type 12)

System Event Log (Type 15)

System Information (Type 1)

System Power Controls (Type 25)

System Power Supply (Type 39)

System Reset (Type 23)

System Slots (Type 9)

Temperature Probe (Type 28)

TPM Device (Type 43)

SMBIOS Structure Type

OEM or Unknown Structure

Version of SMBIOS Structure

Voltage Probe (Type 26)

System Slot Current Usage Data

System Slot Current Usage Data

Slot Peer Group entry within SMBiosSystemSlot

On-board Device Itereator for SlotPeerGroups contained within SMBiosSystemSlot

Data Bus Width Data

System Cache SRAM Types

SMBIOS Strings

System Cache Type Data

System Reset Capabilities

System Slot Characteristics 1

System Slot Characteristics 2

System Slots - Slot Id

System Slot Type Data

System - UUID

System - Wake-up Type Data

Temperature Probe Location and Status

TPM Device Characteristics

System Event Log Type Descriptors within SMBiosSystemEventLog

Embodies the three basic parts of an SMBIOS structure

Undefined Struct Table

System Event Log - Variable Data Format Type Data

Vendor Id

Voltage Probe Location and Status

Raw SMBIOS Data

Enums

System Event Log - Access Method

LS-Bit for Addresses

The slot width of an AGP slot specified in the SystemSlotType

Board Type

Boot Option

Boot Option on Limit

Bus Number

Cache Associativity

System Cache Location (relative to the CPU module)

Maximum memory capacity, in kilobytes, for this cache item

System Cache Operational Mode

Chassis Height

Chassis Lock Presence

Chassis Security Status

Chassis Statue

Chassis Type

Cooling Device Status

Cooling Device Type

Processor Core Count

Processor Core Count #2

Processor Cores Enabled

Processor Cores Enabled #2

CPU Status

Current Probe Accuracy

Electrical Current Probe Location

Current Probe Resolution

Electrical Current Probe Status

SMBIOS Standard Defined Structure

Device/Function Number

Enabled/Disabled Device Status

Contained Element Maximum

Contained Element Minimum

Contained Element Type

System Cache Error Correction Type

Memory Controller Error Detecting Method

Extended BIOS ROM size

Hardware Security Status

System Event Log - Header Format

Management Controller Host Interface Types

Management Controller Host Interface - Protocol Types

DMTF Input Voltage Range Switching

Memory Controller Information — Interleave Support

Interrupt Info

Interrupt Polarity

Interrupt Trigger Mode

Baseboard Management Controller (BMC) interface type

Language Format

System Event Log - Log Type

An M.2 SlotType

An MXM SlotType

Management Device — Address Type

Management Device - Type

Max Power Capacity

Maximum memory capacity, in kilobytes, for this array

Memory Array - Error Correction Types

Memory Array - Location

Memory Array - Use

Memory Channel — Channel Type

Memory Device — Memory Technology

Memory Device -Type

Memory Error - Error Granularity

Memory Error - Error Operation

Memory Error - Error Type

Memory Device — Form Factor

Size of Memory in Bytes

Size of Memory

Extended Size of Memory

Speed of Memory

Extended Speed of Memory

The generation of PciExpress used by the slot.

The slot width of a PCI Express slot specified in the SystemSlotType

Built-in Pointing Device Interface

Built-in Pointing Device Type

Port Information - Connector Types

Portable Battery - Design Capacity

Portable Battery - Design Voltage

Portable Battery - Device Chemistry

Number of Power Cords

Power Supply Status

DMTF Power Supply Type

Probe Amperage

Probe Temperature

Probe Voltage

Processor Architecture Types

External Clock Frequency in MHz

Processor Family

Processor Speed in MHz

Processor Type

Processor Voltage

Register Spacing

Reset Count

Reset Limit

Rotational Speed

Segment Group Number

System Slot Current Usage

System Slot Length

Slot Width

System Boot Status

System Cache Type

System Slot Type

System - UUID Data

System - Wake-up Type

Temperature Probe Accuracy

Temperature Probe Location

Temperature Probe Resolution

Temperature Probe Status

Processor Thread Count

Processor Thread Count #2

Timeout

Timer Interval

Onboard Device Types

System Event Log - Variable Data Format Type

Voltage Probe Accuracy

Voltage Probe Location

Voltage Probe Resolution

Voltage Probe Status

Constants

Full path to the memory device (contains BIOS entry point and table data on *nix platforms)

Full path to smbios_entry_point file on Linux (contains entry point data)

Full path to the DMI file on Linux (contains BIOS table data)

Traits

SMBIOS Structure

An attempted conversion that consumes self, which may or may not be expensive.

Functions

dumps raw data into a file

Loads raw smbios data files from a given folder and returns Vec

Loads raw smbios data from a file and returns SMBiosData or std::io::Error on error.

Returns smbios raw data via /sys/firmware/dmi/tables (on Linux)

Loads SMBiosData from the device via /sys/firmware/dmi/tables (on Linux)