有没有一种更新SMBIOS表的标准方法来添加新的变量?
例如,如果我想要更改一个变量,如'mainboard name',或者更一般地,在表中添加一个新的条目来定义自定义结构和值,那么实现这一点的标准方法是什么,以便我可以用dmidecode、/sys/class/dmi或libsmbios查询这个值?
显然,主板制造商有工具来更改SMBIOS表中的这些值,并且可以通过标准方式从操作系统访问这些值。
/sys/固件/dmi/tables接口似乎是只读的。可以写入/dev/mem下的相应区域(使用smbios_entry_point)以添加新条目吗?
是否有其他标准和现代的方法来保存此类(自定义)硬件信息,以避免直接查询硬件组件?从UEFI?
发布于 2021-11-16 12:35:03
COM Express®模块就有这样一个选项。PICMG规范描述了载波板上的EEPROM,该EEPROM可以容纳SMBIOS数据。看一下下面的规范:https://sourceforge.net/projects/eapidk/上有一个更新https://www.picmg.org/wp-content/uploads/PICMG_EeeP_R1_0.pdf的源代码
但在COM Express®运营商设计指南https://www.picmg.org/wp-content/uploads/PICMG_COMDG_2.0-RELEASED-2013-12-06.pdf中有以下声明
EEPROM存储载波板系统的配置信息。所使用的数据结构在PICMG EEEP规范中定义。本规范建议但不要求使用此系统配置EEPROM。模块BIOS可能会检查承载器板配置EEPROM,但规范并不要求这样做。
其允许BIOS/固件供应商跳过该EEPROM。
https://stackoverflow.com/questions/67165307
复制相似问题