如何在Objective-C或Python中检测CPU速度和HDD RPM
-
29-09-2019 - |
题
我是Objective-C的新手,出于学术原因,我需要阅读CPU速度和HDD RPM
访问Objective-C或Python中某些系统设置的最简单方法是什么
我可以在Objective-C和Python之间为此项目进行选择。
解决方案
这可以通过使用Python阅读注册表来获得Windows 2000及以上的CPU速度:
import _winreg
key = _winreg.OpenKey(
_winreg.HKEY_LOCAL_MACHINE,
r"HARDWARE\DESCRIPTION\System\CentralProcessor\0")
value, type = _winreg.QueryValueEx(key, "~MHz")
print 'CPU speed is:', value
我不知道该如何为其他操作系统或如何获得HDD RPM。
其他提示
我认为您必须使用带有Python的C ++模块来检测CPU速度或硬盘驱动器的rpm。 计算总CPU使用 可以在这里帮助您
我对OBJ-C一无所知,所以无法告诉您该语言是否可以!
检查CPU速度并不是真正的客观c事物,这是操作系统的事情。在OS X(和我假设IOS)上,您想查看sysctlbyname(3)和hw.cpufrequerquency属性,类似:
int hz;
size_t hz_size = sizeof(hz);
int rc = sysctlbyname("hw.cpufrequency", &hz, &hz_size, NULL, 0);
if (0 == rc) {
fprintf(stderr, "Clockspeed is %d hz\n", hz);
}
我不知道获得磁盘驱动器的RPM的好方法,但我确实知道一种不好的方法。解析System_profiler的输出,信息在其中(为“旋转速率”):
Hitachi HTS543232L9SA02: Capacity: 320.07 GB (320,072,933,376 bytes) Model: Hitachi HTS543232L9SA02 Revision: FB4AC50F Serial Number: (omitted) Native Command Queuing: Yes Queue Depth: 32 Removable Media: No Detachable Drive: No BSD Name: disk0 Rotational Rate: 5400 Medium Type: Rotational Partition Map Type: GPT (GUID Partition Table) S.M.A.R.T. status: Verified Volumes: Macintosh HD: Capacity: 319.73 GB (319,728,959,488 bytes) Available: 12.4 GB (12,397,940,736 bytes) Writable: Yes File System: Journaled HFS+ BSD Name: disk0s2 Mount Point: /
我只是不知道,可能会有更好的抽象。
不隶属于 StackOverflow