System Management BIOS (SMBIOS)
The SMBIOS provides numerous tables of data describing a computer's configuration. Available information includes items such as vendor name, BIOS version, installed components, CPU clock speed, etc.
The functions given in this section can be used to retrieve and parse the SMBIOS tables. Declarations of these functions and table entries (structures) are available in file Include\Rttsmbios.h and Libdel\Rttsmbios.pas.
Types RTSMSTR, RTSTRCNT, and RTSMHNDL used in some of the SMBIOS structures have special semantics. Values of type RTSMSTR are string indices. Function RTSMBIOSGetString can retrieve a pointer to the associated string. Values of type RTSTRCNT denote how many strings are appended to a structure. Function RTSMBIOSGetStringN can retrieve all such strings. Values of type RTSMHNDL reference another SMBIOS structure which can be located with RTSMBIOSFindHandle.
The SMBIOS structure declarations included in the following sections and in file Include\Rttsmbios.h correspond to version 2.4 of the SMBIOS specification. Older SMBIOS versions may only support a subset of the declared structure fields as later SMBIOS versions have appended data members to some structures. Function RTSMBIOSIsValid may be used to check if a particular structure member is supported.
More detailed information about the contents of the SMBIOS tables is available in the System Management BIOS (SMBIOS) Reference Specification, version 2.4, downloadable from http://www.dmtf.org/standards/smbios.
Function RTSMBIOSGetStructure
Function RTSMBIOSGetString
Function RTSMBIOSGetStringN
Function RTSMBIOSFindHandle
Function RTSMBIOSIsValid
Function RTSMBIOSGetBusSpeed
Function RTSMBIOSGetCPUSpeed
Structure RTSMBIOS_BIOS_Info (Type 0)
Structure RTSMBIOS_System_Info (Type 1)
Structure RTSMBIOS_BaseBoard_Info (Type 2)
Structure RTSMBIOS_System_Enclosure (Type 3)
Structure RTSMBIOS_Processor_Info (Type 4)
Structure RTSMBIOS_MemoryController_Info (Type 5)
Structure RTSMBIOS_MemoryModule_Info (Type 6)
Structure RTSMBIOS_Cache_Info (Type 7)
Structure RTSMBIOS_PortConnector_Info (Type 8)
Structure RTSMBIOS_SystemSlots (Type 9)
Structure RTSMBIOS_Device_Info (Type 10)
Structure RTSMBIOS_OEM_String (Type 11)
Structure RTSMBIOS_SystemConfigOptions (Type 12)
Structure RTSMBIOS_Language_Info (Type 13)
Structure RTSMBIOS_Group_Associations (Type 14)
Structure RTSMBIOS_SystemEventLog (Type 15)
Structure RTSMBIOS_PhysicalMemoryArray (Type 16)
Structure RTSMBIOS_MemoryDevice (Type 17)
Structure RTSMBIOS_MemoryError_Info (Type 18)
Structure RTSMBIOS_MemoryArrayMappedAddress (Type 19)
Structure RTSMBIOS_MemoryDeviceMappedAddress (Type 20)
Structure RTSMBIOS_PointingDevice (Type 21)
Structure RTSMBIOS_PortableBattery (Type 22)
Structure RTSMBIOS_SystemReset (Type 23)
Structure RTSMBIOS_HardwareSecurity (Type 24)
Structure RTSMBIOS_SystemPowerControl (Type 25)
Structure RTSMBIOS_VoltageProbe (Type 26)
Structure RTSMBIOS_CoolingDevice (Type 27)
Structure RTSMBIOS_TemperatureProbe (Type 28)
Structure RTSMBIOS_CurrentProbe (Type 29)
Structure RTSMBIOS_RemoteAccess (Type 30)
Structure RTSMBIOS_SystemBoot_Info (Type 32)
Structure RTSMBIOS_64BitMemoryError_Info (Type 33)
Structure RTSMBIOS_ManagementDevice (Type 34)
Structure RTSMBIOS_ManagementDeviceComponent (Type 35)
Structure RTSMBIOS_ManagementDeviceThreshold (Type 36)
Structure RTSMBIOS_MemoryChannel (Type 37)
Structure RTSMBIOS_IPMIDevice_Info (Type 38)
Structure RTSMBIOS_SystemPowerSupply (Type 39)
Advanced Programmable Interrupt Controller (APIC)
|