
是通过网络编辑语言获取的,
比如aspnet,java都可以实现 收集机器硬件信息(的)相关代码片断(cpu频率、磁盘可用空间、内存容量……)
举例 代码如下:
using System;
using SystemData;
using SystemConfiguration;
using SystemWeb;
using SystemWebSecurity;
using SystemWebUI;
using SystemWebUIWebControls;
using SystemWebUIWebControlsWebParts;
using SystemWebUIHtmlControls;
using MicrosoftWin32;
using SystemText;
using SystemRuntimeInteropServices;
using SystemManagement;//(添加对 SystemManagementdll (的)引用才能使用 SystemManagement 命名空间)
namespace EC
{
/// <summary>
/// 收集机器硬件信息(的)相关代码片断(cpu频率、磁盘可用空间、内存容量……)
/// </summary>
public class CpuInfoObject
{
public CpuInfoObject()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
#region 获取CPU频率
/
函数名称:GetCPUFrequency()
功能说明:获取CPU频率
参 数:
使用示列:
ResponseWrite(ECCpuInfoObjectGetCPUFrequency());
/
/// <summary>
/// 获取CPU频率
/// </summary>
/// <returns>整型cpu频率</returns>
public static int GetCPUFrequency()
{
RegistryKey rk = RegistryLocalMachineOpenSubKey(@"HARDWARE\DESCRIPTION\System\CentralProcessor\0");
object obj = rkGetValue("~MHz");
int CPUFrequency = (int)obj;
return CPUFrequency;
}
#endregion
#region 获取CPU名称
/
函数名称:GetCPUName()
功能说明:获取CPU名称
参 数:
使用示列:
ResponseWrite(ECCpuInfoObjectGetCPUName());
/
/// <summary>
/// 获取CPU名称
/// </summary>
/// <returns>字符串型cpu名称</returns>
public static string GetCPUName()
{
RegistryKey rk = RegistryLocalMachineOpenSubKey(@"HARDWARE\DESCRIPTION\System\CentralProcessor\0");
object obj = rkGetValue("ProcessorNameString");
string CPUName = (string)obj;
return CPUNameTrimStart();
}
#endregion
#region 磁盘空间
/
函数名称:GetFreeDiskSpace(string DiskName)
功能说明:获取磁盘空间
参 数:DiskName:磁盘名称 D:或E:
使用示列:
ResponseWrite(ECCpuInfoObjectGetFreeDiskSpace("D:"));
/
/// <summary>
/// 磁盘空间
/// </summary>
/// <param name="DiskName">硬盘名称:D:或E:</param>
/// <returns>整型</returns>
public static long GetFreeDiskSpace(string DiskName)
{
ManagementObject disk = new ManagementObject("win32_logicaldiskdeviceid=\"" + DiskName + "\"");
diskGet();
string totalByte = disk["FreeSpace"]ToString();
long freeDiskSpaceMb = ConvertToInt64(totalByte) / 1024 / 1024;
return freeDiskSpaceMb;
}
#endregion
#region 获取 *** 作系统版本
/
函数名称:GetOSName()
功能说明:获取获取 *** 作系统版本名称
参 数:
使用示列:
ResponseWrite(ECCpuInfoObjectGetOSName());
/
/// <summary>
/// 获取 *** 作系统版本
/// </summary>
/// <returns> *** 作系统版本</returns>
public static string GetOSName()
{
string Rev = "";
SystemOperatingSystem osInfo = SystemEnvironmentOSVersion;
switch(osInfoPlatform)
{
//Platform is Windows 95, Windows 98,Windows 98 Second Edition, or Windows Me
case SystemPlatformIDWin32Windows:
switch(osInfoVersionMajor)
{
case 0:
Rev ="Windows 95";
break;
case 10:
if(osInfoVersionRevisionToString()=="2222A")
Rev ="Windows 98 Second Edition";
else
Rev ="Windows 98";
break;
case 90:
Rev="Windows Me";
break;
}
break;
//Platform is Windows NT 351, Windows NT 40, Windows 2000,or Windows XP
case SystemPlatformIDWin32NT:
switch (osInfoVersionMajor)
{
case 3:
Rev = "Windows NT 351";
break;
case 4:
Rev = "Windows NT 40";
break;
case 5:
if (osInfoVersionMinor == 0)
Rev = "Windows 2000";
else if (osInfoVersionMinor == 2)
Rev = "Windows 2003";
else
Rev = "Windows XP";
break;
}
break;
}
return Rev;
}
#endregion
}
}
首先为大家演示1个CPU的情况,这种情况最简单。
CPU的信息存放在/proc/cpuinfo中,如下图所示,physical id代表第几个CPU,编号从0开始,cpu cores 代表核数,可以看出是1颗1核的CPU,即CPU个数是1个。
在我们知道CPU信息具体存放文件后,我们可以简单使用 grep -c 'processor' /proc/cpuinfo来统计CPU个数。
下面演示下多颗CPU的查询情况,先查看下/proc/cpuinfo看看cpu信息有什么不同。可以看出是2颗4核的CPU,即CPU个数是8个。
同样,使用grep -c 'processor' /proc/cpuinfo来统计CPU个数。
也可以使用如下方式单独查询CPU个数、核数及逻辑CPU总数。
注意:总逻辑CPU数 = 物理CPU个数 每颗物理CPU的核数 超线程数
查询CPU个数:
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
查询核数:
cat /proc/cpuinfo| grep "cpu cores"| uniq
查询逻辑CPU总数:
cat /proc/cpuinfo| grep "processor"| wc -l
最后,给大家介绍下CPU型号的查询方式。
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
详细Linux命令介绍请看《Linux命令大全》
用psutil包
cpu:
>>> import psutil>>> psutilcpu_times()
scputimes(user=396146, nice=169729, system=2150659, idle=16900540, iowait=62959, irq=00, softirq=1942, steal=00, guest=0, nice=00)
>>>
>>> for x in range(3):
psutilcpu_percent(interval=1)
40
59
38
>>>
>>> for x in range(3):
psutilcpu_percent(interval=1, percpu=True)
[40, 69, 37, 92]
[70, 85, 24, 21]
[12, 90, 99, 72]
>>>
>>>
>>> for x in range(3):
psutilcpu_times_percent(interval=1, percpu=False)
scputimes(user=15, nice=00, system=05, idle=965, iowait=15, irq=00, softirq=00, steal=00, guest=00, guest_nice=00)
scputimes(user=10, nice=00, system=00, idle=990, iowait=00, irq=00, softirq=00, steal=00, guest=00, guest_nice=00)
scputimes(user=20, nice=00, system=00, idle=980, iowait=00, irq=00, softirq=00, steal=00, guest=00, guest_nice=00)
>>>
>>> psutilcpu_count()
4
>>> psutilcpu_count(logical=False)
2
>>>
内存:
>>> psutilvirtual_memory()svmem(total=8374149120L, available=2081050624L, percent=751, used=8074080256L, free=300068864L, active=3294920704, inactive=1361616896, buffers=529895424L, cached=1251086336)
>>> psutilswap_memory()
sswap(total=2097147904L, used=296128512L, free=1801019392L, percent=141, sin=304193536, sout=677842944)
>>>
可以使用电脑管家的硬件检测查看cpu
1、首先点击工具箱,打开硬件检测工具。
2、找到“CPU信息”选项,查看处理器具体型号以及参数。
以上就是关于怎样通过网络获取对方CPU型号全部的内容,包括:怎样通过网络获取对方CPU型号、linux下如何看有几个cpu、Python 怎样获取当前计算机的 cpu,内存等信息等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)