通过C获取BIOS信息的常用方法

时间:2009-09-09 22:06:09

标签: c bios

看完一些东西后,似乎我可以映射SMBIOS内存并解析它。 我不知道如何解决这个问题。 我不能使用任何托管代码,因为我希望在任何操作系统下都可以编译。

有没有人有任何代码示例如何解决这个问题?

3 个答案:

答案 0 :(得分:8)

在大多数系统上,它没有映射到用户模式可访问的内存,所以你需要调用一些系统API。

在Windows上,您可以拨打GetSystemFirmwareTable

答案 1 :(得分:2)

对于Linux,我想你应该看看 dmidecode source(GPL)的具体代码......

使用和解析dmidecode输出可能就是您所需要的......

答案 2 :(得分:1)

我写了一个可重用的类来阅读所有SMBIOS的东西。

这是非常干净的代码,具有适当的错误处理和易于扩展。 您可以从此类派生一个类,该类使用已分析的数据来显示它或使用它做任何您想做的事情。

您还可以在代码的评论中找到指向实际SMBios文档的链接。

您可以从我的主页下载: ftp://ftp.netcult.ch/mirror/elmue/SMBiosClass.zip

Elmue