首页  >  文章  >  运维  >  Linux如何获取CPU信息?

Linux如何获取CPU信息?

青灯夜游
青灯夜游原创
2019-04-10 10:22:569343浏览

CPU(中央处理单元)通常简称为处理器,是机器最重要的组件之一;它执行所有类型的数据处理操作,并被视为计算机的大脑。如果我们想要查看CPU的信息(例如:处理器类型和速度),要如何实现?下面本篇文章就来给大家介绍在Linux中从命令行获取、查看CPU信息的方法,希望对大家有所帮助。

Linux如何获取CPU信息?

方法一:查看/proc/cpuinfo文件来获取CPU信息

通过显示/proc/cpuinfo虚拟文件的内容,是确定CPU类型等信息的的最简单方法。使用proc/cpuinfo文件标识处理器类型不需要安装任何其他程序。不管我们使用的是什么Linux发行版,它都能工作。

打开终端并使用less或cat来显示/proc/cpuinfo的内容,以便我们获取并查看CPU信息:

less /proc/cpuinfo

该命令将使用标识号显示每个逻辑CPU。例如,如果计算机有8个核心处理器,我们将看到从0到7开始的所有核心的列表。下面是输出的示例:

processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 142
model name	: Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz
stepping	: 10
microcode	: 0x96
cpu MHz		: 700.120
cache size	: 6144 KB
physical id	: 0
siblings	: 8
core id		: 0
cpu cores	: 4
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 22
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp flush_l1d
bugs		: cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf
bogomips	: 3600.00
clflush size	: 64
cache_alignment	: 64
address sizes	: 39 bits physical, 48 bits virtual
power management:

...

以下是重要的几行的介绍:

 ● processor:每个处理器的唯一标识号,从0开始。

 ● model name: 处理器的全名,包括处理器品牌。我们一旦了解了所具有的CPU的确切类型,就可以查看有关处理器规格的产品文档。

 ● flags:CPU功能。

如果不想要显示这么多信息,可以使用grep命令来过滤输出。例如:

要仅显示将使用的处理器名称:

grep -m 1 'model name' /proc/cpuinfo

输出:

model name: Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz

要打印CPU数量:

grep -c 'model name' /proc/cpuinfo

输出

8

当从源代码编译软件、并且希望知道可以同时执行多少并行进程时,了解CPU的数量可以很方便。查找CPU数量的另一种方法是使用以下nproc命令:

nproc

输出

8

方法二:使用lscpu来获取CPU信息

lscpu是一个命令行实用程序,用于显示有关CPU体系结构的信息。lscpu是util-linux软件包的一部分,它安装在所有Linux发行版上。

在shell提示符下,键入lscpu:

lscpu

输出将如下所示,包括有关CPU数量,架构,供应商,系列,型号,速度,缓存,标志等的信息。

Architecture:        x86_64
CPU op-mode(s):      32-bit, 64-bit
Byte Order:          Little Endian
CPU(s):              8
On-line CPU(s) list: 0-7
Thread(s) per core:  2
Core(s) per socket:  4
Socket(s):           1
NUMA node(s):        1
Vendor ID:           GenuineIntel
CPU family:          6
Model:               142
Model name:          Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz
Stepping:            10
CPU MHz:             593.577
CPU max MHz:         3400.0000
CPU min MHz:         400.0000
BogoMIPS:            3600.00
Virtualization:      VT-x
L1d cache:           32K
L1i cache:           32K
L2 cache:            256K
L3 cache:            6144K
NUMA node0 CPU(s):   0-7
Flags:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp flush_l1d

说明:与/proc/cpuinfo文件的内容不同,lscpu的输出不显示所有逻辑CPU的列表。

相关视频教程推荐:《Linux教程

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!

以上是Linux如何获取CPU信息?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn