【Linux】在 Linux 中查询系统架构


那年夏天我和你躲在 这一大片宁静的海

直到后来我们都还在 对这个世界充满期待

今年冬天你已经不在 我的心空出了一块

很高兴遇见你 让我终究明白

回忆比真实精彩

🎵 王心凌《那年夏天宁静的海》


在 Linux 系统中,了解系统架构对于安装软件、调试性能问题以及系统优化至关重要。本文将介绍几种在 Linux 中查询系统架构的方法,包括使用命令行工具和系统信息文件。

什么是系统架构?

系统架构(System Architecture)指的是计算机的硬件结构,包括处理器类型、指令集架构(ISA)、内存和I/O接口等。常见的处理器架构有 x86、x86_64(也称为AMD64)、ARM 等。

使用命令行工具查询系统架构

  1. uname 命令
    uname 命令用于显示系统信息,其中 -m 选项可以显示系统的硬件架构。
bash 复制代码
uname -m
示例输出:
x86_64

这个输出表示系统运行在 64 位的 x86 架构上。

  1. lscpu 命令
    lscpu 命令可以显示详细的 CPU 架构信息,包括架构类型、CPU 数量、线程数、内核数、CPU 频率等。
bash 复制代码
lscpu

示例输出:

less 复制代码
Architecture:        x86_64
CPU op-mode(s):      32-bit, 64-bit
Byte Order:          Little Endian
CPU(s):              4
On-line CPU(s) list: 0-3
Thread(s) per core:  2
Core(s) per socket:  2
Socket(s):           1
NUMA node(s):        1
Vendor ID:           GenuineIntel
CPU family:          6
Model:               142
Model name:          Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz
Stepping:            10
CPU MHz:             2300.000
CPU max MHz:         4600.0000
CPU min MHz:         400.0000
BogoMIPS:            4599.99
Virtualization:      VT-x
L1d cache:           32K
L1i cache:           32K
L2 cache:            256K
L3 cache:            8192K
NUMA node0 CPU(s):   0-3
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 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 ept_ad 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 md_clear flush_l1d
  1. arch 命令
    arch 命令是 uname -m 的简写形式,同样可以用于显示系统架构信息。
bash 复制代码
arch

示例输出:

复制代码
x86_64
  1. file 命令
    file 命令可以用于检查可执行文件的类型和架构信息。通过检查内核文件,可以确定系统架构。
bash 复制代码
file /bin/bash

示例输出:

bash 复制代码
/bin/bash: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=ef3e1c6d3f4ab3e14e06bbfcb1e6d3791a7a7c4c, stripped

使用系统信息文件查询系统架构

  1. /proc/cpuinfo
    /proc/cpuinfo 文件包含有关 CPU 的详细信息,可以用来查询系统架构。
bash 复制代码
cat /proc/cpuinfo

示例输出(部分):

bash 复制代码
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 142
model name	: Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz
stepping	: 10
cpu MHz		: 2300.000
cache size	: 8192 KB
physical id	: 0
siblings	: 4
core id		: 0
cpu cores	: 2
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 22
wp		: yes
  1. /proc/version
    /proc/version 文件显示内核版本和编译信息,可以间接了解系统的架构。
bash 复制代码
cat /proc/version

示例输出:

less 复制代码
Linux version 5.4.0-74-generic (buildd@lcy01-amd64-005) (gcc version 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04)) #83-Ubuntu SMP Wed May 12 18:58:09 UTC 2021

总结

了解系统架构对于系统管理和软件开发至关重要。在 Linux 中,有多种方法可以查询系统架构信息,包括使用 uname、lscpu、arch 和 file 命令,以及读取 /proc/cpuinfo 和 /proc/version 文件。通过这些方法,你可以轻松地获取系统的详细架构信息。

相关推荐
lsh曙光5 小时前
延时at指令和定时cron指令
linux·服务器·网络
圆山猫5 小时前
[Virtualization](四):Linux KVM/RISC-V 的 vCPU 运行路径
java·linux·risc-v
布鲁飞丝5 小时前
vivo Pulsar 万亿级消息处理实践()-Ansible运维部署
运维·ansible
XR1234567885 小时前
企业全光网络架构选型技术白皮书:从物理层到运维层的全链路分析
运维·网络·架构
似的8356 小时前
一步一步学习使用FireMonkey动画() 使用TAnimator类创建动画
linux·学习·nginx
HiDev_6 小时前
【非标自动化】2、认识元器件(直线模组)
运维·自动化
龙仔7257 小时前
人大金仓 KingbaseES V8 只读账号创建完整运维笔记
运维·笔记·sql·人大金仓
我不管我就要叫小猪7 小时前
嵌入式Linux----网络通信
linux·运维·服务器
江湖有缘7 小时前
Docker实战 :使用Docker部署OneTerm堡垒机
运维·docker·容器
泡沫冰@7 小时前
ECS 的介绍和使用
linux·服务器·网络