lim*_*imp 3 c x86 motherboard osdev hardware-id
我正在尝试开发C函数来获取一些主板信息(名称,ID等),但是我找不到这些信息的存储位置。我看了一下CPUID,但在那里找不到与主板有关的任何东西(尽管有很多有关CPU的信息)。
有谁知道我可以从哪里获得这些信息?
非常感谢。
CPUID返回有关CPU本身的信息(因此命名);它不返回有关主板的信息。您的操作系统可能会通过某种方式查询ACPI数据,这可能会(如果主板制造商费心地记录此类信息)具有您所需要的内容;但是,确切的方法取决于您的操作系统。
如果您要对裸机进行编码,则第一站就是ACPI表。特别令人感兴趣的可能是DSDT中的OEMID和OEM表ID。您可能还会在其他地方找到模型信息。但是请注意,BIOS往往充满有趣的错误,并且不能保证制造商已填写使Windows引导并非绝对必要的任何内容。
非ACPI系统通常已经过时,至少对于PC硬件而言已过时。如果您使用的是非ACPI系统,祝您好运。非ACPI系统上没有主板标识信息的标准化位置。您可以尝试探测硬件并根据已知硬件配置文件表进行猜测,但这是您能做到的最好的方法。
| 归档时间: |
|
| 查看次数: |
1308 次 |
| 最近记录: |