百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Linux系统之lscpu命令的基本使用

ahcoder 2025-02-09 11:12 30 浏览

Linux系统之lscpu命令的基本使用

  • 2.1 命令格式
  • 2.2 命令选项
  • 2.3 使用帮助
  • 3.1 查看lscpu版本
  • 3.2 直接使用lspcu命令
  • 3.3 可解析的格式打印cpu信息
  • 3.4 可扩展格式打印cpu信息




一、lscpu命令介绍

lscpu 是一个 Linux 命令,用于显示CPU架构的详细信息。它可以用来查看 CPU 的型号、主频、架构、虚拟化支持等。

二、lscpu命令的使用帮助

2.1 命令格式

lscpu [选项]

2.2 命令选项

  • 下面是lscpu命令的常用选项
 -a, --all               # 打印在线和离线CPU(默认为-e)
 -b, --online            # 仅打印在线CPU(-p的默认值)
 -c, --offline           # 打印离线CPU
 -e, --extended[=] # 打印出一个扩展的可读格式
 -p, --parse[=]    # 打印出可解析的格式
 -s, --sysroot      # 将指定的目录用作系统根目录
 -x, --hex               # 打印十六进制掩码,而不是CPU列表

 -h, --help     # 显示此帮助并退出
 -V, --version  # 输出版本信息并退出

2.3 使用帮助

lscpu 命令还支持一些选项和参数,可以通过lscpu --help 命令来查看详细用法。

[root@jeven ~]# lscpu --help

Usage:
 lscpu [options]

Display information about the CPU architecture.

Options:
 -a, --all               print both online and offline CPUs (default for -e)
 -b, --online            print online CPUs only (default for -p)
 -c, --offline           print offline CPUs only
 -e, --extended[=] print out an extended readable format
 -p, --parse[=]    print out a parsable format
 -s, --sysroot      use specified directory as system root
 -x, --hex               print hexadecimal masks rather than lists of CPUs
 -y, --physical          print physical instead of logical IDs

 -h, --help     display this help and exit
 -V, --version  output version information and exit

Available columns:
           CPU  logical CPU number
          CORE  logical core number
        SOCKET  logical socket number
          NODE  logical NUMA node number
          BOOK  logical book number
        DRAWER  logical drawer number
         CACHE  shows how caches are shared between CPUs
  POLARIZATION  CPU dispatching mode on virtual hardware
       ADDRESS  physical address of a CPU
    CONFIGURED  shows if the hypervisor has allocated the CPU
        ONLINE  shows if Linux currently makes use of the CPU
        MAXMHZ  shows the maximum MHz of the CPU
        MINMHZ  shows the minimum MHz of the CPU

For more details see lscpu(1).

三、lscpu命令的基本使用

3.1 查看lscpu版本

使用-V选项,查看lscpu工具版本。

[root@jeven ~]# lscpu -V
lscpu from util-linux 2.23.2

3.2 直接使用lspcu命令

lscpu是一个用于显示和收集有关CPU架构的信息的命令。它可以显示有关CPU型号、核心数、线程数、缓存大小和架构等信息。打开终端或命令提示符,直接输入lscpu命令并按下回车键

[root@jeven ~]# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                6
On-line CPU(s) list:   0-5
Thread(s) per core:    1
Core(s) per socket:    6
Socket(s):             1
NUMA node(s):          1
Vendor ID:             AuthenticAMD
CPU family:            23
Model:                 113
Model name:            AMD Ryzen 5 3600 6-Core Processor
Stepping:              0
CPU MHz:               3593.247
BogoMIPS:              7186.49
Virtualization:        AMD-V
Hypervisor vendor:     VMware
Virtualization type:   full
L1d cache:             32K
L1i cache:             32K
L2 cache:              512K
L3 cache:              32768K
NUMA node0 CPU(s):     0-5
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc art rep_good nopl tsc_reliable nonstop_tsc extd_apicid eagerfpu pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw perfctr_core retpoline_amd ssbd ibpb vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec clzero arat npt svm_lock nrip_save vmcb_clean flushbyasid decodeassists overflow_recov succor

lscpu命令会显示包含以下信息的输出:

  • Architecture: 表示系统的架构,这里是x86_64,表示64位的x86架构。
  • CPU op-mode(s): 表示处理器支持的操作模式,这里是32位和64位。
  • Byte Order: 表示系统的字节顺序,这里是小端字节顺序。
  • CPU(s): 表示系统中的CPU数量,这里是6个。
  • On-line CPU(s) list: 表示在线的CPU列表,这里是0到5,表示所有的CPU都是在线状态。
  • Thread(s) per core: 表示每个核心的线程数,这里是1,表示每个核心只有一个线程。
  • Core(s) per socket: 表示每个处理器插槽中的核心数,这里是6,表示每个处理器插槽中有6个核心。
  • Socket(s): 表示系统中的处理器插槽数,这里是1,表示只有一个处理器插槽。
  • NUMA node(s): 表示非一致性内存访问(NUMA)节点数,这里是1,表示只有一个NUMA节点。
  • Vendor ID: 表示处理器的供应商ID,这里是AuthenticAMD,表示是AMD的处理器。
  • CPU family: 表示处理器系列,这里是23,表示属于AMD的第23个处理器系列。
  • Model: 表示处理器型号,这里是113,表示是AMD Ryzen 5 3600 6-Core处理器。
  • Model name: 表示处理器的具体型号名称。
  • Stepping: 表示处理器的步进号。
  • CPU MHz: 表示处理器的主频,这里是3593.247 MHz。
  • BogoMIPS: 表示处理器的性能指标,这里是7186.49。
  • Virtualization: 表示处理器是否支持虚拟化,这里是AMD-V,表示支持AMD虚拟化技术。
  • Hypervisor vendor: 表示虚拟化软件的供应商,这里是VMware。
  • Virtualization type: 表示虚拟化类型,这里是full,表示完全虚拟化。
  • L1d cache: 表示一级数据缓存的大小,这里是32K。
  • L1i cache: 表示一级指令缓存的大小,这里是32K。
  • L2 cache: 表示二级缓存的大小,这里是512K。
  • L3 cache: 表示三级缓存的大小,这里是32768K。
  • NUMA node0 CPU(s): 表示NUMA节点0中的CPU列表,这里是0到5。
  • Flags: 表示处理器的特性标志,列举了处理器支持的各种指令集和功能。

3.3 可解析的格式打印cpu信息

使用-p选项显示有关CPU拓扑结构的信息,这里列出了每个CPU核的详细信息,包括所属的核心、插槽、节点以及各级缓存的大小。每一行表示一个CPU核,以逗号分隔的方式列出了对应的ID。

[root@jeven ~]# lscpu -p
# The following is the parsable format, which can be fed to other
# programs. Each different item in every column has an unique ID
# starting from zero.
# CPU,Core,Socket,Node,,L1d,L1i,L2,L3
0,0,0,0,,0,0,0,0
1,1,0,0,,1,1,1,0
2,2,0,0,,2,2,2,0
3,3,0,0,,3,3,3,0
4,4,0,0,,4,4,4,0
5,5,0,0,,5,5,5,0

3.4 可扩展格式打印cpu信息

使用-e选项,使用可扩展格式打印cpu相关信息。

[root@jeven ~]# lscpu -e
CPU NODE SOCKET CORE L1d:L1i:L2:L3 ONLINE
0   0    0      0    0:0:0:0       yes
1   0    0      1    1:1:1:0       yes
2   0    0      2    2:2:2:0       yes
3   0    0      3    3:3:3:0       yes
4   0    0      4    4:4:4:0       yes
5   0    0      5    5:5:5:0       yes

四、lscpu命令使用注意事项

请注意,lscpu命令在不同的操作系统上可能会有一些差异,某些选项可能不可用。可以通过man lscpu命令或lscpu --help命令查看该命令的帮助文档和更多选项。用lscpu命令需要有一定的Linux系统和硬件知识,并根据实际需要选择合适的选项和命令组合。

使用lscpu命令需要注意以下几点:

  • lscpu命令只能在Linux系统中使用,不能在其他操作系统中使用。
  • 需要以root用户或具有sudo权限的用户身份运行lscpu命令。
  • lscpu命令输出的信息较多,包括处理器架构、核心数、线程数、CPU频率、缓存大小等等,需要根据需要筛选所需信息。
  • lscpu命令的输出信息可能因为不同的Linux发行版和硬件平台而有所差异。
  • lscpu命令可以通过使用选项来获取特定的信息,如-l选项用于显示逻辑核心数,-p选项用于显示物理核心数,等等。
  • lscpu命令可以与其他命令结合使用,如grep命令用于过滤lscpu输出的结果,awk命令用于进一步处理输出结果等等。

相关推荐

KaOS 2025.05版本发布:全面拥抱Qt6,彻底告别Qt5

KaOSLinux2025.05版本重磅发布:全面拥抱Qt6,开启KDE生态新篇章继2025.03版本发布两个月后,专注于KDE桌面环境、采用XFS文件系统的滚动发行版Li...

基于FIMC接口的CMOS摄像头驱动分析与设计

摘要:目前的嵌入式系统中,USB摄像头使用比较普遍,但其应用会受到传输速度的限制。本文采用一款高速CMOS摄像头,其驱动利用S3C6410内置的FIMC接口技术,采用DMA和ping-pong缓冲...

没错是微软 推出基于Linux的交换机系统

2015-09-2205:59:59作者:郑伟你没看错,为了提升自身Azure云数据中心内网络设备的兼容性及开放性,微软也开始推出基于Linux的网络交换机系统了。这个被称为AzureCloud...

Linus Torvalds 宣布首个 Linux 内核 6.16 候选版本

Linux内核负责人兼创始人LinusTorvalds宣布关闭合并窗口,该窗口用于将主要新功能添加到内核中,并开始发布Linux6.16候选版本,从候选版本1(Linux6.16-r...

Linux内核漏洞将影响Haswell架构服务器

在infoq网站上,GilTene最近报告一个十分重要,但并不为人知Linux内核补丁,特别对采用Haswell架构的Linux系统用户和管理员应该特别关注。报告提醒RedHat发行版的用户(包括...

关于Linux性能调优中网络I/O的一些笔记

写在前面和小伙伴分享一些Linux网络优化的笔记,内容很浅,可以用作入门博文内容结合《Linux性能优化》读书笔记整理涉及内容包括常用的优化工具(mii-tool,ethtool,ifconfig,i...

国产操作系统- Veket Linux(国产操作系统之光银河麒麟阅读理解)

VeketLinux是一个随身的可装在U盘的Linux操作系统。主要面向桌面用户。它的设计重点是提供简单易用且稳定的操作系统,同时保持更新和开发。它具有强大的功能集和广泛的用户基础,可满足...

AlmaLinux 9.6发布:升级工具、初步支持IBM Power虚拟化技术

IT之家5月21日消息,科技媒体linuxiac昨日(5月20日)发布博文,报道称代号为SageMargay的AlmaLinux9.6发行版已上线,距上一版本9.5发...

跟老韩学Linux运维架构师系列,vim与view的基本使用

下面是vim和view的10个实例:用vim打开一个新文件:vimnewfile.txt这个命令将会在vim编辑器中打开一个新文件。在vim中移动光标:使用方向键或h、j、k、l键来移动光标。在v...

malloc底层原理剖析——ptmalloc内存池

malloc底层为什么是内存池malloc大家都用过,其是库函数。我们都知道库函数在不同的操作系统中其实执行的是系统调用,那么malloc在Linux上执行的是哪个系统调用呢?brk()和mmap()...

Zen 6架构首秀Linux,AMD加速下一代处理器布局

IT之家5月15日消息,科技媒体Phoronix昨日(5月14日)发布博文,报道称AMD已经开始为下一代“Zen6”处理器做准备,已为该构架向Linux内核提交了首个补丁,...

为何越来越多企业转向安卓/Linux工业平板电脑?答案在这里

在工业领域,设备的稳定性至关重要,尤其是工业平板电脑,常年运行在高温、粉尘、潮湿等复杂环境下,一旦系统崩溃或者卡顿,可能会影响整个生产流程。那么,为什么越来越多的企业选择安卓/Linux工业平板电脑,...

从3ms到0.8ms:ARM+Linux如何重塑工业控制实时性标杆

在智能制造领域,产线控制系统对实时性的要求越来越高。根据行业调研数据,超过65%的工业现场出现过因系统响应延迟导致的故障停机,平均每次停机造成的直接损失高达2-8万元。传统x86架构搭配Windows...

看Linux如何"挖坑种树"

写在前面,有人看我的Linux文章说技术难度不深,笔者不是不想写深,笔者是觉得Linux难就难在入门,入门之后你就知道如何上网查询你所要要解决的Linux需求。如果你已入门,此文已对你无用,请略过此...

AlmaLinux 9.6 发布,新增功能亮点纷呈!

距离上一版本AlmaLinux9.5发布六个月后,基于5.14内核的AlmaLinux正式宣布其企业级Linux发行版的9.x系列第六个更新——AlmaLinux9.6(Sag...