编程linux 获取cpu核数,Linux命令查看以及编程获取CPU核数
㈠ 概念
① 物理CPU
实际Server中插槽上的CPU个数
物理cpu数量,可以数不重复的 physical id 有几个
② 逻辑CPU
Linux用户对 /proc/cpuinfo 这个文件肯定不陌生. 它是用来存储cpu硬件信息的
信息内容分别列出了processor 0 – n 的规格。这里需要注意,如果你认为n就是真实的cpu数的话, 就大错特错了
一般情况,我们认为一颗cpu可以有多核,加上intel的超线程技术(HT), 可以在逻辑上再分一倍数量的cpu core出来
逻辑CPU数量=物理cpu数量 x cpu cores 这个规格值 x 2(如果支持并开启ht)
备注一下:Linux下top查看的CPU也是逻辑CPU个数
③ CPU核数
一块CPU上面能处理数据的芯片组的数量、比如现在的i5 760,是双核心四线程的CPU、而 i5 2250 是四核心四线程的CPU
一般来说,物理CPU个数×每颗核数就应该等于逻辑CPU的个数,如果不相等的话,则表示服务器的CPU支持超线程技术
㈡ 查看CPU信息
当我们 cat /proc/cpuinfo 时、
具有相同core id的CPU是同一个core的超线程
具有相同physical id的CPU是同一个CPU封装的线程或核心
㈢ 下面举例说明
① 查看物理CPU的个数
[plain] view
plaincopy
print?
#cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l
2
② 查看逻辑CPU的个数
[plain] view
plaincopy
print?
#cat /proc/cpuinfo |grep "processor"|wc -l
8
③ 查看CPU是几核
[plain] view
plaincopy
print?
#cat /proc/cpuinfo |grep "cores"|uniq
4
我这里应该是2个Cpu,每个Cpu有4个core,所以逻辑CPU是8
在Windows平台下,我们可以使用GetSystemInfo( )这个函数来获取当前系统的一些软硬件信息。其中有一项即是当前机器中处理器的核数。通过如下语句即可获得所要的信息:
SYSTEM_INFO info;
GetSystemInfo(&info);
return info.dwNumberOfProcessors;
而在Linux平台下,我们可以使用sysconf()或者get_nprocs()来获取处理器核数。下面分别介绍:
sysconf( )有unistd.h提供,要使用该函数需要#include,
其参数可以是_SC_NPROCESSORS_CONF,也可以是 _SC_NPROCESSORS_ONLN。sysconf(_SC_NPROCESSORS_CONF)返回系统可以使用的核数,但是其值会包括系统中禁用的核的数目,因此该值并不代表当前系统中可用的核数。而sysconf(_SC_NPROCESSORS_ONLN)的返回值真正的代表了系统当前可用的核数。
GNU C库提供了另外一种获取机器可用核数的方法。函数intget_nprocs_conf (void),int get_nprocs (void)在 sys/sysinfo.h中定义,这两个函数可用获取机器的核数。其中get_nprocs_conf (void)的返回值与sysconf(_SC_NPROCESSORS_CONF)类似,并不真正表名当前可用核数;而get_nprocs (void)的返回值与sysconf(_SC_NPROCESSORS_ONLN)类似,真正的反映了当前可用核数。
编程linux 获取cpu核数,Linux命令查看以及编程获取CPU核数相关推荐
- linux top命令查看内存及多核CPU的使用讲述 [转]
2019独角兽企业重金招聘Python工程师标准>>> linux top命令查看内存及多核CPU的使用讲述 [转] FROM: http://www.lvtao.net/html/ ...
- linux top命令查看内存及多核CPU的使用讲述【转】
转载一下top使用后详细的参数,之前做的笔记找不见了,转载一下,作为以后的使用参考: 原文地址:http://blog.csdn.net/linghao00/article/details/80592 ...
- 利用linux的df和du命令查看文件和目录的内存占用
版权声明:本文为博主原创文章,转载请超链接注明出处. https://blog.csdn.net/ljc1026774829/article/details/74935658 当磁盘大小超过标准 ...
- 【转载】dos下通过wmic命令查看硬盘和内存/CPU信息(windows自带命令查看硬件信息)
更新时间:2014年05月11日 00:26:16 投稿:mdxy-dxy 这篇文章主要介绍了windows系统自带命令查看硬件信息,怎样dos命令查看硬盘和内存/CPU信息的方法,需要的朋友可以 ...
- (win和win server)dos下通过wmic命令查看硬盘和内存/CPU信息(windows自带命令查看硬件信息)
如何在windows系统自带命令查看硬件信息,怎样dos命令查看硬盘和内存/CPU信息?最直接的是:开始→运行→CMD打开命令提示符,在该窗口下输入systeminfo执行,即可看到几乎所有想知道的系 ...
- 计算机的硬盘 内存在哪查到,dos下通过wmic命令查看硬盘和内存/CPU信息(windows自带命令查看硬件信息)...
怎么查硬盘里隐藏的内存 如何在windows系统自带命令查看硬件信息,怎样dos命令查看硬盘和内存/CPU信息?最直接的是:开始→运行→CMD打开命令提示符,在该窗口下输入systeminfo执行,即 ...
- linux top命令查看内存及多核CPU的使用讲述
top进入视图 第一行: 10:08:45 - 当前系统时间 10 days, 3:05 - 系统已经运行了10天3小时5分钟(在这期间没有重启过) 1 users - 当前有1个用户登录系统 loa ...
- linux的top命令cpu,在Linux系统下使用top命令查看CPU使用情况
在Linux系统下,使用top命令查看CPU使用情况. %Cpu(s): 0.3 us, 0.1 sy, 0.0 ni, 99.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st ...
- linux命令如何查看dns,详解Linux系统使用dig/nslookup命令查看dns解析的方法
今天主要介绍一下怎么去使用dig/nslookup命令查看dns解析.下面,我们一起来看. 一.dig命令 Dig是一个在类Unix命令行模式下查询DNS包括NS记录,A记录,MX记录等相关信息的工具 ...
- Linux基础系列(2命令帮助的详细获取)
在Linux系统中有数以千计的命令,而且很多的命令又有好多个参数,所以很大一部分不常用的命令或者参数我们恐怕不易记住. 然而当我们想使用的却又不知道具体的参数或者命令的时候怎么办呢,这时候就需要去获取 ...
最新文章
- axios发送登录请求_使用axios实现登录功能(前后端联调)
- toolStripButton调整大小并只显示text
- 韩顺平php视频笔记47 函数使用
- 【英语学习】【WOTD】foray 释义/词源/示例
- SpringCloud Alibaba - Nacos 作为配置中心 读取Properties配置信息
- 稳定币usda是哪个发行的_稳定币USDT的“发行”和“印刷”有什么区别?
- Linux组件封装(三)使用面向对象编程封装Thread
- javascript--一个简洁的管理菜单
- 实验九 TCP 协议分析实验
- 常见Flash小游戏开发核心思想笔记——《拼图》
- 计算机cmd复制粘贴指令,cmd命令提示符窗口中快速复制粘贴的方法
- RT5350配置uboot 支持8M的Flash
- 2019113_房价预测
- 【Linux学习笔记④】——Shell程序设计【变量 输入与输出 条件表达式 判断语句 循环语句 Shell函数】
- 超论价值观,需求价值论
- #35 #36 k8s context 实践源码阅读 【 Go 夜读 】
- 雅虎的无奈,将关闭地图、Pipes、GeoPlanet和PlaceSpotter APIs、一些区域网站
- 机器学习算法——线性回归的详细介绍 及 利用sklearn包实现线性回归模型
- *** 花季护航 和谐测试器
- RxAndroid基础
热门文章
- 创编游戏计算机课反思,大班音乐游戏教案及教学反思《包饺子》
- 使用python和java一键替换word文件内容
- 误入前端三年之番外篇
- Linux zip解压缩 + tar解压缩
- 创客c语言程序设计软件下载,C/C++程序设计学习与实验系统V2015.5.0.0官方免费版下载 - 下载吧...
- 魅蓝a5 android版本,魅族发布魅蓝A5手机:699元,双待长续航,久用不卡
- 小网吧的电影服务器搭建实例 即软件下载
- EVE-NG 连接ASA ASDM
- 替换android系统字体颜色,Android替换系统字体
- python画一箭穿心