4

所以这一直是困扰我一段时间的事情。
CPU-Z 等程序如何实际监控电压和频率等内容?我绝不是一个非常有经验的程序员,但是看起来很复杂的事情总是让我感兴趣。

我使用过的东西,例如 WMI,似乎提供了快照,并且不准确。CPU 频率不变,电压四舍五入到两位数(例如,从 1.1 到 1.199 的任何值都变为 1.1)。

我希望已经编写了某种驱动程序来授予较低级别的访问权限,但谷歌搜索似乎没有透露这些程序是如何工作的。

如果有人能启发我,并可能给出一个代码示例(如果不是太难的话),我将不胜感激。谢谢。

4

2 回答 2

1

这很可能是针对 BIOS 或芯片组的一些非常低级的编程。您可能必须在 Intels 或 AMDs 网站上查找文档才能执行类似操作。

于 2012-04-23T17:53:24.557 回答
1

电压可以通过 RDMSR 指令读取(索引 0x198),详细信息可以查看 64-ia-32-architectures-software-developer-manual。您可能需要库 winring0,Visual Studio 不支持 RDMSR 指令。您可以google winring0 下载库。核心电压=EBX[bit0-bit15]*(float)1/(2^12)。我试过了,但还没有得到正确的频率。 64-ia-32-architectures-software-developer-manual

于 2016-11-09T11:18:41.490 回答