CPU架构Linux基础知识

一文搞懂 x86、x64、AMD64、ARM64、AArch64 的区别

| 9 分钟阅读

前言

下载软件时经常看到 amd64.debaarch64.rpmx86_64.tar.gz 这样的文件名,很多人会疑惑:这些名词到底什么关系?本文用一条主线串起这段 CPU 架构的发展史。


一、x86:一切的开端

x86 泛指 Intel 开发的一系列 32 位处理器架构。这个名字源于 Intel 早期的 CPU 命名惯例:

8086 → 80186 → 80286 → 80386 → 80486

因为数字不能被注册为商标,Intel 从第五代开始改用 “Pentium” 命名,但 “x86” 作为架构代称一直沿用至今。Intel 官方文档称其为 IA-32(Intel Architecture 32-bit)。

本质:CISC(复杂指令集)架构,32 位,拥有 8 个 32 位通用寄存器:eaxebxecxedxebpespesiedi


二、64 位时代的岔路口

当 CPU 开始迈向 64 位时,业界面临两个选择:

路线做法代表
向下兼容 x86在 x86 基础上扩展 64 位指令AMD64
推倒重来全新设计,不兼容 x86IA-64(Itanium 安腾)

AMD 抢跑:AMD64

AMD 率先制造出了兼容 x86 的 64 位商用 CPU,命名为 AMD64,抢占了 64 位 PC 市场的先发优势。

Intel 的弯路:IA-64

Intel 选择了另一条路——完全重新设计的 IA-64 架构(即 Itanium 安腾系列)。结果十分惨淡:

  • 全新指令集意味着没有现成的编译器支持
  • 微软承诺推出安腾版 Windows Server,但迟迟未能交付
  • 软件生态几乎为零,市场遇冷

Intel 妥协:x86_64

最终 Intel 不得不转向兼容 AMD64 的路线,但为了不承认这是 AMD 设计的,换了个名字叫 x86_64,字面意思就是 “x86 指令集的 64 位扩展”。


三、一句话总结关系

x86_64、x64、AMD64 本质上是同一个东西。

名词来源使用场景
AMD64AMD 命名Linux 包管理器(如 amd64.deb
x86_64Intel 命名系统信息(uname -m 输出)
x64微软命名Windows 系统(“64 位” 的简称)

我们日常使用的 Intel / AMD 桌面级 CPU 全部属于 x86_64 架构。与之并列的是 ARM(移动端 / Apple Silicon)、PPC(PowerPC,已边缘化)等完全不同指令集的架构。


四、x86 vs x86_64 的核心差异

寄存器

特性x86(32 位)x86_64(64 位)
通用寄存器数量8 个(eax, ebx, ecx, edx, ebp, esp, esi, edi)16 个(增加 r8 ~ r15)
寄存器宽度32 位64 位
命名前缀e(extended)r(register)

内存寻址

x86x86_64
理论寻址空间4 GB16 EB(约 1600 万 TB)
实际支持上限4 GB(PAE 可扩展)通常 128 GB ~ 数 TB

MMX / SSE 寄存器

64 位架构下 MMX 和 SSE 寄存器的位数、数量也一并扩展,浮点运算性能大幅提升。


五、ARM 阵营:ARM64 / AArch64

ARM 公司

ARM 不同于 Intel / AMD,它不直接生产芯片,而是将架构设计授权给其他厂商(高通、苹果、联发科等)。ARM 采用 RISC(精简指令集)设计,以低功耗著称,统治了移动端市场。

命名关系

名词含义
ARM64非正式通俗叫法,指 ARM 的 64 位架构
AArch64ARM 官方术语,ARM Architecture 64-bit
aarch64Linux 系统中 uname -m 的输出值

ARM64AArch64 是同一个东西的不同叫法,就像 AMD64x86_64 一样。


六、公司背景速览

公司角色架构
Intelx86 开创者,全球最大 CPU 厂商x86 / x86_64(IA-32 / Intel 64)
AMDIntel 主要竞争对手,x86_64 的发明者AMD64
ARM授权型架构设计商,不生产芯片ARM / AArch64

AMD 中文名超威半导体,除 CPU 外也是除 NVIDIA 以外仅有的独立 GPU 供应商。


七、实战:如何查看当前系统架构

# 查看 CPU 架构
uname -m

常见输出与含义对照:

输出含义
x86_6464 位 x86(Intel / AMD 桌面 CPU)
aarch6464 位 ARM(Apple Silicon / 树莓派 4+ / 云服务器)
armv7l32 位 ARM(旧树莓派 / 嵌入式设备)
i686 / i38632 位 x86(老旧 PC)
# 查看 CPU 详细信息
cat /proc/cpuinfo | grep -E "model name|Architecture"
# 或
lscpu

总结

桌面/服务器主流:  x86 → x86_64(AMD64、x64)
移动/嵌入式主流:  ARM → AArch64(ARM64)
历史遗留/淘汰:    IA-64(Itanium 安腾)、PPC(PowerPC)

记住这个脉络,下载软件包时就能一眼判断该用哪个架构版本了。


附录:CentOS 各版本官方下载地址

不同的 CentOS 版本提供了针对 x86_64aarch64 等架构的独立 ISO 镜像,下载时需根据你的 CPU 架构选择对应文件。

版本状态官方下载地址可用架构
CentOS Stream 9滚动开发版https://www.centos.org/centos-stream/x86_64 / aarch64 / ppc64le
CentOS Stream 8滚动开发版https://www.centos.org/centos-stream/x86_64 / aarch64 / ppc64le
CentOS Linux 8EOL(2021.12)已从官网移除
CentOS Linux 7EOL(2024.06)存档:http://vault.centos.org/7.9.2009/x86_64 为主
CentOS Linux 6EOL(2020.11)存档:http://vault.centos.org/6.10/x86_64 / i386

如何选择架构版本?

下载 ISO 时文件名中的架构标识:

文件名后缀对应架构适用的 CPU
x86_64amd6464 位 x86Intel / AMD 桌面及服务器 CPU
aarch64arm6464 位 ARM树莓派 4+、AWS Graviton、Apple Silicon 虚拟机
i386i68632 位 x86老旧 PC(不推荐)
ppc64le64 位 PowerPCIBM POWER 服务器

下载说明

  1. 绝大多数服务器选 x86_64(即 amd64)版本
  2. 云服务器(如 AWS Graviton)选 aarch64 版本
  3. 国内推荐使用镜像站加速下载

国内镜像站(以 CentOS 7 x86_64 为例)

重要提醒

  • CentOS 7 / 8 均已停止维护,新部署请使用 CentOS Stream 9 或转向 Rocky Linux / AlmaLinux 等 RHEL 替代发行版
  • 下载前先用 uname -m 确认当前系统架构,避免下错版本