【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 文件。通过这些方法,你可以轻松地获取系统的详细架构信息。

相关推荐
想学好C++的oMen7 小时前
文件基础IO
linux·服务器
早睡冠军候选人8 小时前
Ansible学习----管理复杂的 Play 和 Playbook 内容
运维·学习·云原生·ansible
endcy201610 小时前
基于Spring AI的RAG和智能体应用实践
人工智能·ai·系统架构
Robpubking12 小时前
AWS 中 S3 的 server-side encryption 解释与说明
运维·aws
福旺旺12 小时前
Linux——解压缩各类文件
linux
武子康13 小时前
Java-171 Neo4j 备份与恢复 + 预热与执行计划实战
java·开发语言·数据库·性能优化·系统架构·nosql·neo4j
MasterLi802314 小时前
我的读书清单
android·linux·学习
ha204289419414 小时前
Linux操作系统学习之---初识网络
linux·网络·学习
飞凌嵌入式14 小时前
【玩转多核异构】T153核心板RISC-V核的实时性应用解析
linux·嵌入式硬件·嵌入式·risc-v
陌路2014 小时前
Linux 34TCP服务器多进程并发
linux·服务器·网络