1. 通过shell获取cpu相关
1.1 查看CPU详细信息
cat /proc/cpuinfo
这个命令可以看到cpu每个核的信息
1.2 查看CPU信息
lscpu
1.3 查看进程在哪个CPU上运行
ps -eo pid,args,psr | grep xxx
# pid - 进程ID
# args - 该进程执行时传入的命令行参数
# psr - 分配给进程的CPU
2. 通过C程序编程获取
两个API
#include <sys/sysinfo.h>
int get_nprocs(void);
int get_nprocs_conf(void);
get_nprocs_conf返回CPU总核数,包括系统中禁用的核的数目,因此该值并不代表当前系统中可用的核数。
get_nprocs返回系统当前可用的核数。
示例:
#include <stdio.h>
#include <sys/sysinfo.h>
int main(int argc, char* argv[])
{
printf("cpu total: %d\n", get_nprocs_conf());
printf("cpu num: %d\n", get_nprocs());
return 0;
}
本文介绍了如何使用Linux命令行工具和C程序来获取CPU信息,包括查看CPU详细配置、进程运行的CPU核以及编程方式获取CPU核心数量。
561

被折叠的 条评论
为什么被折叠?



