您可能在某些应用或电脑设置页见过 x86 这个词,但不了解它的确切含义。事实上,x86 背后的意义非常重大,它是计算机硬件技术发展历史上的重要支柱之一,对芯片和 CPU 的发展影响深远。
自上世纪 80 年代开始,x86 就成为了台式机 CPU 的代名词,AMD 和 Intel 的处理器都采用了这一架构。x86 架构的出现推动了个人电脑的普及,具有里程碑式的意义。本文将为您简要介绍 x86 的历史、定义与要点,以及它对计算机发展的重要意义。
x86:一种历史悠久且关键、重要的指令集架构
AMD RYZEN
x86 是一种指令集架构 (ISA),它决定了处理器的最基础设计。ISA 影响着处理器可以运行何种软件、软件的运行效率,以及为实现某种 ISA 所需要的处理器组件。就像 DNA 序列决定了人类的特征,x86 这一指令集架构决定了基于其设计的处理器的性能和适用范围,它是处理器可以「识别」的基础语言。
对于 x86 而言,最关键的不是技术细节,而是在背后支撑 x86 发展的公司。上世纪 70 年代末,Intel 开发了 x86 指令集架构,并依靠它建立了庞大的商业帝国。时至今日,Intel 仍在制造新型的 x86 处理器,其指令集架构已经存续了近 50 年。AMD 作为 Intel 在 CPU 领域的主要竞争对手,也生产 x86 处理器。过去 AMD 规模远小于 Intel,但现在两家公司的体量和重要性已相当。
需要注意的是,即便 CPU 之间存在很大差异,任何基于 x86 指令集架构的 CPU 都可以运行 x86 软件。Intel 和 AMD 的 CPU 差异很大,但它们都使用 x86 架构,因此可以运行相同的软件。常见的像 Raptor Lake 和 Zen 4 这样的 CPU 设计被称为「架构」,但从技术上讲它们只是「微架构」,因为没有指令集架构那么基础和广泛适用。
x86 指令集简史(大事件回顾)
Intel Core
x86 架构随着 Intel 传奇的 8086 处理器于上世纪 70 年代末问世,8088 则是 8086 一个更便宜的变种,被 IBM 选用在 1981 年推出的具有里程碑意义的个人电脑中。8086 和 8088 处理器的成功,不仅奠定了 Intel 在计算机芯片领域的主导地位,也推动了 x86 指令集架构的广泛应用。AMD 最初为 Intel 生产用于个人电脑的 x86 芯片,在 Intel 对 AMD 的排挤下,双方产生了法律纠纷,但在 1995 年 AMD 赢得了生产自己的 x86 芯片的权利。
从 1990 年代开始,随着消费者、企业和数据中心对计算机需求的增长,Intel 和 AMD 的规模都有所扩大,x86 CPU 的复杂性也在提高。这就让 AMD 抓住了机会,通过设计性能更优异的 CPU 来挑战 Intel 的统治地位。到了 2000 年中期,AMD 不仅占领了相当大的台式机和服务器市场份额,还发明了 x86 的 64 位扩展指令集(称为 AMD64 或 x86-64),从而支持处理更大的数据。在实际上终结了 Intel 推出不久的全新 64 位指令集架构和安腾服务器处理器,这也成为了 Intel 有史以来最失败的 CPU 之一。
只要是 x86 指令集的 CPU 就能跑 x86 软件,哪怕 CPU 差异巨大。
从 2000 年末开始,在很长一段时间里,Intel 显得比 AMD 更加重要。但自 2017 年以来,AMD 在 PC 和服务器市场的份额开始稳步增长,到现在已经和 Intel 的规模和地位差距不大。此外,Intel 和 AMD 都试图将 x86 应用于其他领域,如游戏机、手机和物联网设备。Intel 花了多年想进军被 ARM 所主导的智能手机市场,但最后以惨败告终。相比之下,AMD 对手机处理器没啥真刀真枪的规划。
推荐阅读:CPU 的一些事,x86 智能手机的衰落之路
游戏机领域可能是个人电脑和服务器之外 x86 仅存的堡垒。第一个使用 x86 的游戏机是初代 Xbox,它采用了 Pentium III CPU,在之后一段时间内它是唯一的使用 x86 的游戏机。IBM 的 PowerPC 芯片后来被广泛用于 PS3、Xbox 360、Wii 和 Wii U,但对于 PS4 和Xbox One,Sony 和Microsoft 都选择了 AMD 来为新游戏机定制 x86 芯片。当前一代的 PS5 和 Xbox Series X/S 也沿用了 AMD 芯片,手提式游戏 PC 像 Steam Deck 和 ROG Ally 也同样如此。游戏机成为了 x86 架构持续发展的重要平台。
x86 的未来和面临的挑战
Intel vs. M1
虽然 Intel 和 AMD 都在使用 x86 指令集进行竞争,但还有其他技术方案试图整体取代 x86 在计算机领域的统治地位。如今已经存在许多不同的指令集架构,但最重要的两个 x86 替代者是 Arm 和 RISC-V,其代表了数百家公司试图终结 x86 在 PC 和服务器市场的主导地位。
尽管 Arm 和 RISC-V 存在激烈竞争,但都可以为合作伙伴提供基础的 CPU 设计方案,这些合作伙伴可以基于 Arm 或 RISC-V 指令集开发自己的 CPU。知名的 Arm 芯片生产商就包括最近从 Intel 转向自家 Arm 处理器的 Apple,以及 Samsung 和 Google。同时,RISC-V 目前主要应用于工控等领域以及如 FPGA、硬盘等设备的辅助处理器,但 RISC-V 同样存在取代整个 CPU 市场的野心。
如果 Arm 和 RISC-V 要挑战 Intel 和 AMD 在 PC 和服务器领域的统治地位,就需要开发大量新的软件,这需要时间积累。
x86 目前最大的优势在于:x86 软件无法在非 x86 处理器上运行。如果 Arm 和 RISC-V 想挑战 Intel 和 AMD 在 PC 和服务器领域的统治地位,就需要开发大量新的软件进行适配,这需要时间积累。当然也存在一些变通方法,如 Apple 的 Rosetta 2 就能在运行时将 x86 应用程序「翻译」成 Arm 指令,但其效果也有限。正是将新的指令集引入一个成熟硬件生态系统的困难度,阻碍了 Intel 实现智能手机芯片的计划。
在过去 20 年中,x86 几乎没有发生重大革新,最后一个重要更新还是 AMD 增加的 64 位指令集扩展。然而,Intel 一直在考虑删除 x86 中的所有非 64 位组成部分,创建一个暂定名为 x86S 的新架构。现今几乎所有硬件都已升级到 64 位,这在理论上可提高性能和效率。
x86 未来的发展很难预测,它是否会在长期失利于 Arm 和 RISC-V,或者继续占据 PC 和服务器市场的主导地位,亦或进行改造以对抗新的竞争对手,都还不得而知。但可以确定的是,任何新的形势变化都需要较长时间才能实现。从现状来看,x86 至少在当前阶段不会消失,它仍将存在一段时间。