计算机的体系结构从指令集的复杂度上可以分两类,一是复杂指令集CISC,主要是X86架构。另一类是精简指令集RISC,这个比较多,主要是ARM、MIPS、PowerPC等。
拿到一块开发板,有时候想快速的知道它的体系结构或者叫系统架构,linux上提供了比较多的方法来判断。下面列几种相对常见一些的
uname命令
uname -a
[email protected]:~$ uname -a
Linux tegra-ubuntu 4.4.38-tegra #1 SMP PREEMPT Fri Jul 28 09:55:22 PDT 2017 aarch64 aarch64 aarch64 GNU/Linux
aarch64就是ARM架构
[email protected]:~$ uname -a
Linux ubuntu 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
X86架构
[email protected]:~# uname -a
Linux DrogooBox 3.3.8 #33 Tue Mar 22 15:02:01 CST 2016 mips GNU/Linux
MIPS架构
file命令
file看一下本地的可执行程序,比如/bin/bash,随便找个可执行程序就可以。
file /bin/bash
[email protected]:~$ file /bin/bash
/bin/bash: ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-, for GNU/Linux 3.7.0, BuildID[sha1]=64c27467ad7a6c507c8f79464fea872fed5dd044, stripped
里面有个ARM,显然是ARM架构。
[email protected]:~$ file /bin/bash
/bin/bash: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 2.6.32, BuildID[sha1]=04eca96c5bf3e9a300952a29ef3218f00487d37b, stripped
显然是X86架构
arch命令
arch命令给出的结果比较简洁主要用于显示操作系统架构类型,与 uname -m 命令非常类似。如果输出 x86_64 则表示为 64 位系统,如果输出 i686 或 i386 则表示为 32 位系统。
arch
[email protected]:~$ arch
aarch64
ARM架构
[email protected]:~$ arch
x86_64
X86架构
dpkg命令
dpkg 的命令可用于查看 Debian/ Ubuntu 操作系统是 32 位还是 64 位,此命令只适用于基于 Debian 和 Ubuntu 的 Linux 发行版。如果当前 Linux 是 64 位则输出 amd64,是 32 位则会输出 i386。
dpkg --print-architecture
getconf 命令
getconf 命令主要用于显示系统变量配置,我们也可使用如下参数来查看 Linux 系统架构:
getconf LONG_BIT
另一种方式
直接去看cpuinfo信息,然后自己再简单分析一下即可。
cat /proc/cpuinfo
参考
1. 如何查看linux系统的体系结构
2. 查看Linux系统架构类型的5条常用命令