SMBIOS(System Management BIOS , SMBIOS) 是主板或系统制造者以标准格式显示产品管理信息所需遵循的统一规范

SMBIOS是由行业指导机构Desktop Management Task Force (DMTF)起草的开放性的技术标准;

SMBIOS(System Management BIOS)是由BIOS/UEFI在初始化系统的时候收集的关于系统信息的一组结构化的表,并且存放在内存中,
提供给操作系统使用。

https://www.dmtf.org/zh-hans  中文

smbios规范下载
https://www.dmtf.org/sites/default/files/standards/documents/DSP0134_3.4.0.pdf

DMTF Specifications

https://www.dmtf.org/sites/default/files/standards/documents/DSP0134_3.5.0.pdf

Work in Progress Documents
https://www.dmtf.org/sites/default/files/standards/documents/DSP0134_3.6.0WIP50.pdf

Historical Documents
https://www.dmtf.org/sites/default/files/standards/documents/DSP0130.pdf

苹果公司关于smbios实现

https://opensource.apple.com/source/AppleSMBIOS/AppleSMBIOS-22/SMBIOS.h.auto.html

从 SMBIOS 2.3 版本开始,兼容 SMBIOS 的实现必须包含以下 10 个数据表结构

BIOS 信息 (Type 0) 、系统信息 (Type 1) 、系统外围或底架 (Type 3) 、处理器信息 (Type 4) 、高速缓存信息 (Type 7) 、
系统插槽(Type 9) 、物理存储阵列 (Type 16) 、存储设备 (Type 17) 、存储阵列映射地址 (Type 19) 、系统引导信息 (Type 32) 。 
其它的可以根据实际需要来实现。

我的SMBIOS是2.6的,所以我以2.6定义的type如下。

TYPE 0->BIOS 信息,        TYPE 1->系统信息
TYPE 2->基板(模块)信息 TYPE 3->系统外围或底架
TYPE 4->处理器信息 TYPE 5->存储控制器信息(Obsolete),TYPE 6->存储模块信息(Obseolete) TYPE 7->缓存信息
TYPE 8->端口连接器信息 TYPE 9->系统插槽
TYPE 10->板载系统信息 TYPE 11->OEM字符串
TYPE 12->系统配置信息.............................

这里我看下 TYPE 1(系统信息)

位置   名称            长度                  描述
00h TYPE 号 1BYTE 结构的TYPE 号,此处是1
01h 长度 1BYTE 格式区域总长度,2.0 版为08h ,2.1-2.3.4 版为19h ,从2.4 版开始为1Bh
02h 句柄 2BYTE 指向本结构的句柄
04h 电脑制造商 1BYTE 一般为01h ,表示在字符串区域中的编号
05h 产品名称 1BYTE 在字符串区域中的编号
06h 版本号 1BYTE 在字符串区域中的编号
07h 序列号 1BYTE 在字符串区域中的编号
09h UUID 16BYTE 通用唯一标识符
18h 唤醒类型 BYTE 用来标识导致系统开电启动的事件
19h SKU 号 BYTE 在字符串区域中的编号,SKU 号通常为产品ID 或采购订单号
1Ah 产品家族 1BYTE 在字符串区域中的编号

SMBIOS specification 2.7.1 中定义了如下的结构类型:

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
126 Inactive
127 End-of-Table
128-255 Available for system- and OEM- specific informatio

在Linux中,可以通过dmidecode命令查看,不同类型的SMBIOS子表通过type数值来区分

使用方法 dmidecode -t type_num,在系统里面查看smbios表的信息

查询方法:
[root@ht8 devices]#dmidecode 
[root@ht8 devices]#dmidecode -t 0
[root@ht8 devices]# dmidecode -t system

type=0代表bios

[root@ht8 devices]# dmidecode -t 0  //0代表bios
# dmidecode 3.2
Getting SMBIOS data from sysfs.
SMBIOS 2.4 present. Handle 0x0000, DMI type 0, 24 bytes
BIOS Information
Vendor: Phoenix Technologies LTD
Version: 6.00
Release Date: 09/21/2015
Address: 0xE99E0
Runtime Size: 91680 bytes
ROM Size: 64 kB
Characteristics:
ISA is supported
PCI is supported
PC Card (PCMCIA) is supported
PNP is supported
APM is supported
BIOS is upgradeable
BIOS shadowing is allowed
ESCD support is available
Boot from CD is supported
Selectable boot is supported
EDD is supported
Print screen service is supported (int 5h)
8042 keyboard services are supported (int 9h)
Serial services are supported (int 14h)
Printer services are supported (int 17h)
CGA/mono video services are supported (int 10h)
ACPI is supported
Smart battery is supported
BIOS boot specification is supported
Function key-initiated network boot is supported
Targeted content distribution is supported
BIOS Revision: 4.6
Firmware Revision: 0.0

type=9代表系统插槽

[root@ht8 devices]# dmidecode -t 9
# dmidecode 3.2
Getting SMBIOS data from sysfs.
SMBIOS 2.4 present. Handle 0x0198, DMI type 9, 13 bytes
System Slot Information
Designation: ISA Slot J8
Type: 16-bit ISA
Current Usage: Unknown
Length: Short
Characteristics:
5.0 V is provided Handle 0x0199, DMI type 9, 13 bytes
System Slot Information
Designation: ISA Slot J9
Type: 16-bit ISA
Current Usage: Unknown
Length: Short
Characteristics:
5.0 V is provided Handle 0x019A, DMI type 9, 13 bytes
System Slot Information
Designation: ISA Slot J10
Type: 16-bit ISA
Current Usage: Unknown
Length: Short
Characteristics:
5.0 V is provided Handle 0x019B, DMI type 9, 13 bytes
System Slot Information
Designation: PCI Slot J11
Type: 32-bit PCI
Current Usage: In Use
Length: Long
ID: 1
Characteristics:
5.0 V is provided
3.3 V is provided Handle 0x019C, DMI type 9, 13 bytes
System Slot Information
Designation: PCI Slot J12
Type: 32-bit PCI
Current Usage: Available
Length: Long
ID: 2
Characteristics:
5.0 V is provided
3.3 V is provided Handle 0x019D, DMI type 9, 13 bytes
System Slot Information
Designation: PCI Slot J13
Type: 32-bit PCI
Current Usage: In Use
Length: Long
ID: 3
Characteristics:
5.0 V is provided
3.3 V is provided Handle 0x019E, DMI type 9, 13 bytes
System Slot Information
Designation: PCI Slot J14
Type: 32-bit PCI
Current Usage: Available
Length: Long
ID: 4
Characteristics:
5.0 V is provided
3.3 V is provided

https://blog.csdn.net/zhoudaxia/article/details/5919699

最新文章

  1. .Net环境下的缓存技术介绍 (转)
  2. [LeetCode] Missing Ranges 缺失区间
  3. MVC5 + EF6 + Bootstrap3 (16) 客户端验证
  4. ffmpeg-20160525-git-bin
  5. 对SIGQUIT的实验 & Java dump
  6. oracle 设置标识列自增
  7. C#中Excel的导入和导出的几种基本方式
  8. C# - 高级方法参数
  9. 单独启动tomcat
  10. 《JS原型》
  11. HTML技术简介
  12. HTML<!DOCTYPE> 宣示
  13. 带你领会 线性代数 微积分的本质 3blue1brown 动画效果帅出天际
  14. selenium之元素定位-css
  15. Python读取xlsx文件
  16. Linux 文件查看,文件夹切换,权限查看
  17. Linux 常用命令——which, whereis, locate, find
  18. AI工具(缩放工具)(路径查找器)(旋转工具)(镜像工具)5.12
  19. 团队项目M1阶段个人反思
  20. C#多线程编程之:异步事件调用

热门文章

  1. CF708C题解
  2. django主要文件介绍及django请求生命流程图
  3. 2.8 C++STL set/multiset容器详解
  4. MYSQL如何在创建表时添加判断条件
  5. 最长公共子串(DP)
  6. SpringBoot巧用 @Async 提升API接口并发能力
  7. centos7升级openssh8.7&openssl1.1.1l脚本
  8. linux内存(一) 内核空间与用户空间
  9. EasyUI 之datagrid 使用 【DataGrid属性解释】
  10. 动态规划优化算法——wqs二分 and 折线优化