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

相关推荐
思麟呀10 小时前
Linux的基础IO流
linux·运维·服务器·开发语言·c++
winner888111 小时前
嵌入式Linux驱动开发全流程:工具协作+核心概念拆解(从入门到理解)
linux·运维·驱动开发
ShiinaKaze11 小时前
fatal error: bits/c++config.h: No such file or directory
linux·gcc·g++
TTBIGDATA11 小时前
【Ambari开启Kerberos】KERBEROS SERVICE CHECK 报错
大数据·运维·hadoop·ambari·cdh·bigtop·ttbigdata
Archy_Wang_111 小时前
脚本自动生成专业Linux巡检报告
linux·运维·服务器
java_logo12 小时前
SGLANG Docker容器化部署指南
linux·运维·docker·容器·eureka·1024程序员节
MarkHD12 小时前
蓝牙钥匙 第67次 蓝牙大规模部署挑战:高密度环境下的性能优化与系统架构设计
性能优化·系统架构
Qayrup12 小时前
各个系统的 docker安装
运维·docker·容器
敲代码的瓦龙13 小时前
操作系统?进程!!!
linux·c++·操作系统
打不了嗝 ᥬ᭄13 小时前
数据链路层
linux·网络·网络协议·http