获取 ram 制造商
Posted
技术标签:
【中文标题】获取 ram 制造商【英文标题】:Get ram manufacturer 【发布时间】:2011-05-09 12:19:26 【问题描述】:有谁知道以编程方式检索 ram 内存制造商的方法?
谢谢!
【问题讨论】:
在 C 或 C++ 中会很困难。您必须使用暗示 COM 的 WMI。一个简单的解决方法是 vbs:activexperts.com/activmonitor/windowsmanagement/adminscripts/… 并非每个制造商都将其名称写入其 RAM 模块上的 EEPROM 是毫无价值的,因此即使您找到了访问这些数据的方法,它也可能没有您正在寻找的所有内容为。 【参考方案1】:现代 RAM 芯片在板上有一个额外的 EPROM,其中包含大量有关 RAM 的信息。这方面的标准是 SPD,或串行存在检测。至少某些版本的 SPD 包含 JDEC 制造商的代码。
查看this article 了解有关 SPD 的一些介绍性信息。不是每个 RAM 芯片都有您需要的信息,也不是每个 Bios 都会公开它,但这篇文章应该让您开始在可能的情况下处理这些东西。
【讨论】:
你不需要 ring0 吗? 我没搞清楚!如果 OP 在嵌入式系统或 MS-DOS 上运行,那么他不会。否则,当然,您要么需要安装一个驱动程序,让您从用户空间使用 Ring 0 功能,要么希望操作系统已经提供了等效的功能。呵呵,在 Windows 上你也许可以简单地远程控制 HWINFO 或类似的程序。我的答案是一个起始步骤指针,而不是一本完整的食谱。 @ruslik,不,但您可能需要管理员权限 - 以 CPU-Z 为例。 @iconiK 很抱歉让您失望了,但是如果您查看 cpuz 可执行文件的末尾,您会发现几个驱动程序。它们被保存为临时文件并加载,因此它使用 ring0。【参考方案2】:在 WINAPI 中,您应该能够调用 GetSystemFirmwareTable 来检索 SMBIOS 表,然后解析该表以提取该信息。
看到这个
http://msdn.microsoft.com/en-us/library/ms724379%28v=VS.85%29.aspx
还有这个
http://dmtf.org/sites/default/files/standards/documents/DSP0134_2.7.0.pdf
如 ruslik 所述,另一种选择是使用 WMI,如此处所述
http://msdn.microsoft.com/en-us/library/aa390423%28v=VS.85%29.aspx
(您正在寻找 Win32_PhysicalMemoryArray 类型的对象)
我不确定哪种方式更容易。两者似乎都很难。
【讨论】:
以上是关于获取 ram 制造商的主要内容,如果未能解决你的问题,请参考以下文章