| System Management BIOS | |
|---|---|
| Abbreviation | SMBIOS |
| Status | Published |
| Year started | 1999; 27 years ago (1999) |
| Latest version | 3.9.0 August 19, 2025; 6 months ago (2025-08-19) |
| Organization | Distributed Management Task Force (DMTF) |
| Related standards | Common Information Model (CIM),Web-Based Enterprise Management (WBEM),Redfish |
| Domain | Systems management |
| Website | www |
Incomputing, theSystem Management BIOS (SMBIOS) specification definesdata structures (and access methods) that can be used to read management information produced by theBIOS of acomputer.[1] This eliminates the need for theoperating system to probe hardware directly to discover what devices are present in the computer. The SMBIOS specification is produced by theDistributed Management Task Force (DMTF), a non-profitstandards development organization. The DMTF estimates that two billion client and server systems implement SMBIOS.[2]
SMBIOS was originally known as Desktop Management BIOS (DMIBIOS), since it interacted with theDesktop Management Interface (DMI).[3]
Version 1 of the Desktop Management BIOS (DMIBIOS) specification was produced byPhoenix Technologies in or before 1996.[4][5]
Version 2.0 of the Desktop Management BIOS specification was released on March 6, 1996 byAmerican Megatrends (AMI),Award Software,Dell,Intel, Phoenix Technologies, andSystemSoft Corporation. It introduced 16-bit plug-and-play functions used to access the structures from Windows 95.[6]
The last version to be published directly by vendors was 2.3 on August 12, 1998. The authors were American Megatrends, Award Software,Compaq, Dell,Hewlett-Packard, Intel,International Business Machines (IBM), Phoenix Technologies, and SystemSoft Corporation.
Circa 1999, theDistributed Management Task Force (DMTF) took ownership of the specification. The first version published by the DMTF was 2.3.1 on March 16, 1999. At approximately the same timeMicrosoft started to require thatOEMs and BIOS vendors support the interface/data-set in order to have Microsoftcertification.
Version 3.0.0, introduced in February 2015, added a 64-bit entry point, which can coexist with the previously defined 32-bit entry point.
The latest version 3.9.0 was released in August 2025.[7]
The SMBIOS table consists of an entry point (two types are defined, 32-bit and 64-bit), and a variable number of structures that describe platform components and features. These structures are occasionally referred to as "tables" or "records" in third-party documentation.
As of version 3.3.0, the SMBIOS specification defines the following structure types:[8][9]
| Type | Description |
|---|---|
| 0 | BIOS Information |
| 1 | System Information |
| 2 | Baseboard (or Module) Information |
| 3 | System Enclosure or Chassis |
| 4 | Processor Information |
| 5 | Memory Controller Information (Obsolete) |
| 6 | Memory Module Information (Obsolete) |
| 7 | Cache Information |
| 8 | Port Connector Information |
| 9 | System Slots |
| 10 | On Board Devices Information |
| 11 | OEM Strings |
| 12 | System Configuration Options |
| 13 | BIOS Language Information |
| 14 | Group Associations |
| 15 | System Event Log |
| 16 | Physical Memory Array |
| 17 | Memory Device |
| 18 | 32-Bit Memory Error Information |
| 19 | Memory Array-Mapped Address |
| 20 | Memory Device-Mapped Address |
| 21 | Built-in Pointing Device |
| 22 | Portable Battery |
| 23 | System Reset |
| 24 | Hardware Security |
| 25 | System Power Controls |
| 26 | Voltage Probe |
| 27 | Cooling Device |
| 28 | Temperature Probe |
| 29 | Electrical Current Probe |
| 30 | Out-of-Band Remote Access |
| 31 | Boot Integrity Services (BIS) Entry Point |
| 32 | System Boot Information |
| 33 | 64-Bit Memory Error Information |
| 34 | Management Device |
| 35 | Management Device Component |
| 36 | Management Device Threshold Data |
| 37 | Memory Channel |
| 38 | IPMI Device Information |
| 39 | System Power Supply |
| 40 | Additional Information |
| 41 | Onboard Devices Extended Information |
| 42 | Management Controller Host Interface |
| 43 | TPM Device |
| 44 | Processor Additional Information |
| 126 | Inactive |
| 127 | End-of-Table |
| 128–255 | Available for system- and OEM- specific information |
| 129 | Intel ASF |
| 130 | Intel AMT |
| 131 | Intel Management Engine |
The EFI configuration table (EFI_CONFIGURATION_TABLE) contains entries pointing to the SMBIOS 2 and/or SMBIOS 3 tables.[10] There are several ways to access the data, depending on the platform and operating system.
In theUEFI Shell, theSmbiosView command can retrieve and display the SMBIOS data.[11][12] One can often enter the UEFI shell by entering the system firmware settings, and then selecting the shell as a boot option (as opposed to a DVD drive or hard drive).
ForLinux,FreeBSD, etc., thedmidecode utility can be used.
Microsoft specifiesWMI as the preferred mechanism for accessing SMBIOS information fromMicrosoft Windows.[13][14]
On Windows systems that support it (XP and later), some SMBIOS information can be viewed with either theWMIC utility with 'BIOS'/'MEMORYCHIP'/'BASEBOARD' and similar parameters, or by looking in the Windows Registry under HKLM\HARDWARE\DESCRIPTION\System.
Various software utilities can retrieve raw SMBIOS data, including FirmwareTablesView[15] andAIDA64.
Table and structure creation is normally up to the system firmware/BIOS. TheUEFI Platform Initialization (PI) specification includes an SMBIOS protocol (EFI_SMBIOS_PROTOCOL) that allows components to submit SMBIOS structures for inclusion, and enables the producer to create the SMBIOS table for a platform.[16]
Platform virtualization software can also generate SMBIOS tables for use inside VMs, for instanceQEMU.[17]
If the SMBIOS data is not generated and filled correctly then the machine may behave unexpectedly. For example, aMini PC that advertisesChassis Information | Type = Tablet may behave unexpectedly using Linux. A desktop manager likeGNOME will attempt to monitor a non-existent battery and shut down the screen and network interfaces when the missing battery drops below a threshold. Additionally, if theChassis Information | Manufacturer is not filled in correctly then work-arounds for the incorrectType = Tablet problem cannot be applied.[18]