CPU相关概念及如何在Linux中查看CPU信息

简介: 文章目录一、CPU相关概念1、物理CPU2、物理CPU内核3、逻辑CPU4、几核几线程二、Linux中查看物理CPU、物理内核、逻辑CPU命令1、查看物理CPU个数2、查看每个物理CPU核心数3、查看逻辑CPU的个数三、CPU架构1、多个物理CPU2、多核CPU3、多核超线程

文章目录

一、CPU相关概念

1、物理CPU

2、物理CPU内核

3、逻辑CPU

4、几核几线程

二、Linux中查看物理CPU、物理内核、逻辑CPU命令

1、查看物理CPU个数

2、查看每个物理CPU核心数

3、查看逻辑CPU的个数

三、CPU架构

1、多个物理CPU

2、多核CPU

3、多核超线程

一、CPU相关概念


1、物理CPU

物理cpu就是计算机上实际安装的cpu,物理cpu数就是主板上实际插入的CPU数量。

在Linux上查看/proc/cpuinfo,其中的physical id就是每个物理cpu的id,有几个不同的physical id就有几个物理cpu。

2、物理CPU内核

每颗物理CPU可以有1个或者多个物理内核,通常每颗物理CPU的内核数都是固定的,单核CPU就是有1个物理内核,双核CPU就是有2个物理内核。

在Linux上查看/proc/cpuinfo,其中的core id就是每颗物理CPU的物理内核id,有几个不同的core id就有几个物理内核。


总的CPU物理内核数 = 物理CPU数 * 每颗物理CPU的内核数。


3、逻辑CPU

操作系统可以使用逻辑CPU来模拟真实CPU。在没有多核处理器时,一个物理CPU只能有一个物理内核。现在有了多核技术,一个物理CPU可以有多个物理内核,可以把一个CPU当做多个CPU使用,也就是所谓的逻辑CPU。

没有开启超线程的时,逻辑CPU的个数就是总的CPU物理内核数。

开启超线程后,逻辑CPU的个数就是总的CPU物理内核数的两倍。

在Linux查看/proc/cpuinfo/,其中的processor就是逻辑CPU,有几个processor就有几个逻辑CPU。


总的逻辑CPU数 = 物理CPU个数 * 每颗物理CPU的核数 * 超线程数。
总的逻辑CPU数 = 总的物理CPU内核数 * 超线程数。


4、几核几线程

如果计算机有一个物理CPU,且是双核的,支持超线程,那么这台计算机就是双核四线程。实际上几核几线程中的线程数就是逻辑CPU数。

对于两路四核超线程计算机,两路指计算机有2个物理CPU,每颗CPU中有4个物理内核,CPU支持超线程,就有2 * 4 * 2 = 16个逻辑CPU,这就是通常所谓的16核计算机。

二、Linux中查看物理CPU、物理内核、逻辑CPU命令


1、查看物理CPU个数

grep 'physical id' /proc/cpuinfo | uniq | wc -l

2、查看每个物理CPU核心数

grep 'core id' /proc/cpuinfo | uniq | wc -l

3、查看逻辑CPU的个数

grep 'processor' /proc/cpuinfo | wc -l

三、CPU架构


1、多个物理CPU

CPU通过总线进行通信,效率比较低,如下:20200117145133270.png

2、多核CPU

多核CPU,不同的核通过L2 Cache进行通信,存储和外设通过总线与CPU通信,如下:20200117151143438.png

3、多核超线程

每个核有两个逻辑处理单元,两个核共享一个核的资源,如下:20200117151516226.png

相关文章
|
3天前
|
Linux Windows
Linux01---目录结构,Linux系统下只有一个最顶级的树/,Windows系统有盘符概念,而Linux系统没有盘符概念,整个系统都在/根目录下,Linux 系统写法 /user/local
Linux01---目录结构,Linux系统下只有一个最顶级的树/,Windows系统有盘符概念,而Linux系统没有盘符概念,整个系统都在/根目录下,Linux 系统写法 /user/local
|
15天前
|
存储 Linux Shell
Linux进程概念(上)
冯·诺依曼体系结构概述,包括存储程序概念,程序控制及五大组件(运算器、控制器、存储器、输入设备、输出设备)。程序和数据混合存储,通过内存执行指令。现代计算机以此为基础,但面临速度瓶颈问题,如缓存层次结构解决内存访问速度问题。操作系统作为核心管理软件,负责资源分配,包括进程、内存、文件和驱动管理。进程是程序执行实例,拥有进程控制块(PCB),如Linux中的task_struct。创建和管理进程涉及系统调用,如fork()用于创建新进程。
31 3
Linux进程概念(上)
|
5天前
|
监控 Python
paramiko 模块 ---Python脚本监控当前系统的CPU、内存、根目录、IP地址等信息
paramiko 模块 ---Python脚本监控当前系统的CPU、内存、根目录、IP地址等信息
|
11天前
|
存储 Shell Linux
Linux进程概念(下)
本文详细的介绍了环境变量和进程空间的概念及其相关的知识。
16 0
Linux进程概念(下)
|
14天前
|
Linux 数据处理
Linux中的nproc命令:轻松查看系统CPU核心数
`nproc`命令在Linux中用于查看CPU核心数,简洁高效,无参数直接运行。它读取`/proc/cpuinfo`获取信息,适用于资源分配。例如,`nproc`显示核心数,`nproc --all`(非标准选项,可能需结合其他命令)展示更多详情。在脚本中,可将`nproc`输出赋值给变量以适应动态资源管理。使用时注意文件访问权限,检查结果准确性,并结合其他工具如`lscpu`获取更全面硬件信息。
|
16天前
|
NoSQL Linux C语言
Linux gdb调试的时候没有对应的c调试信息库怎么办?
Linux gdb调试的时候没有对应的c调试信息库怎么办?
15 1
|
3天前
|
Linux 调度
部署02-我们一般接触的是Mos和Wimdows这两款操作系统,很少接触到Linux,操作系统的概述,硬件是由计算机系统中由电子和机械,光电元件所组成的,CPU,内存,硬盘,软件是用户与计算机接口之间
部署02-我们一般接触的是Mos和Wimdows这两款操作系统,很少接触到Linux,操作系统的概述,硬件是由计算机系统中由电子和机械,光电元件所组成的,CPU,内存,硬盘,软件是用户与计算机接口之间
|
10天前
|
Linux Perl
如何在Linux系统中确定CPU架构
如何在Linux系统中确定CPU架构
13 0
|
12天前
|
Linux Shell 调度
Linux进程概念(中)
本文详细解析了Linux进程的不同状态,包括运行、阻塞、挂起,以及僵尸和孤儿进程的概念。讨论了进程优先级的重要性,以及操作系统如何通过活动队列、过期队列和优先级管理进程调度。
22 0
|
12天前
|
安全 Linux Shell
深入探索Linux命令pinentry:安全处理敏感信息的利器
`pinentry`是GnuPG的安全工具,用于安全获取密码等敏感信息,它在终端中显示隐藏输入的提示,确保信息安全。支持交互式操作、多种输入方式,且有丰富的选项,如`--tty`和`--window-title`。示例脚本展示了如何在bash中使用它获取密码。使用时注意环境安全,勿明文显示密码,结合其他工具增强安全性,熟悉参数选项,并考虑备份相关配置。