快速跳转

什么是 ARM 处理器?

复制 URL

ARM 处理器是一系列基于精简指令集计算机(RISC)架构的中央处理单元(CPU)。ARM 就是“高级精简指令集机器(Advanced RISC Machine)”的简写。与人们更为熟悉的服务器架构(如 x86)相比,ARM 架构代表了一种不同的系统硬件设计方法。

过去几年中,ARM 生态系统出现了许多服务器优化产品,以及专为云计算和超大规模计算、电信和边缘计算以及高性能计算(HPC)应用而设计的解决方案。了解用于 ARM 的红帽® 企业 Linux® 如何提供可靠的高性能平台,包括跨物理、虚拟和云端部署的统一应用环境。

要想理解 ARM 架构的用例和应用,首先需要真正了解 ARM 处理器的历史。

x86 架构是 CPU 中的老资格,第一个 x86 CPU 设计早在 1978 年就问世了。当时,动辄占据整个房间的大型机还是市场的主流。随着技术不断更新换代,向“微型计算机”(PC)演进,各路人马纷纷使出浑身解数,钻研如何配置组件,从而实现更高的性能和更小的设计。在 1980 年代初期, Acorn Computers 公司设计出了微型计算机,但其芯片设计的性能有限。

大约在同一时间(从 1981 年开始),加州大学伯克利分校的一个项目团队正在研究计算机芯片的资源使用情况。处理单元中有一些预定义的操作,统称为指令集。操作系统和程序就是使用这些指令集来执行任务。伯克利的程序员发现,大多数程序只使用指令集的一小部分。如果他们减少预定义指令的数量,即去除复杂、难以实现(且很少使用)的指令,那么剩余的简单指令不仅运行得更快,而且在芯片上会占用更少的空间且耗用更少的能源。他们将这称之为精简指令集计算机(RISC)架构,与 x86 复杂指令集计算机(CISC)架构区别开来。无论是 RISC 还是 CISC,二者都是指令集架构。

典型的服务器架构(例如无处不在的 x86 设计)采用模块化设计,主板上的组件可插拔、替换。CPU 及其他组件(例如显卡和 GPU、内存控制器、存储器或处理内核)针对特定功能进行了优化,并且可以轻松替换或扩展。不过,这种轻松是有代价的;这些硬件组件通常是更同质化的系统架构,可以让黑客利用“一次编写,随处运行”的漏洞来快速攻击系统。

ARM 架构的处理器则采用了不同的方法。CPU 内核不再是将处理单元与硬件的其余部分分开,而是成为集成电路物理平台的一部分。其他硬件功能(例如外围组件互连等 I/O 总线控制器)均位于同一物理平台上,所有不同的功能之间则通过内部总线集成在一起。当这些组件放置在同一集成电路上时,我们将其称之为系统级芯片( SOC)。

这种适应性和集成性正是 ARM 处理器的主要优势。与 x86 架构的 AMD 或英特尔处理器不同,ARM 处理器没有“只此一家”的制造商。Arm Holdings 公司将 ARM 处理器(用于不同专业用途和优化的系列产品)的设计方案授权给其他硬件制造商,并提供相应的性能基础测试,然后制造商会对这些设计做一些调整,使其更适合自己的特定设备。

从某种意义上说,单纯问“什么是 ARM 架构处理器?”没有问到点子上。使用 ARM 架构的处理器的设计理念和方法完全不同,它在系统性能和连接性方面也有完全不同的优先级。

尽管 x86 是服务器市场的主流架构,但 ARM 架构才是世界上最普及的电子设计方案。几乎所有智能手机以及其他小型移动设备和笔记本电脑都采用的是 ARM 架构。

x86 芯片追求的是优化性能,而 ARM 架构的处理器则致力于实现成本与更小尺寸、更低功耗、更低热量生成、速度与更长电池使用时间之间的平衡。

由于 Arm Holdings 销售的是设计方案而非硬件,因此硬件制造商可以根据其特定要求定制微架构,同时保持小尺寸、高性能和高能效。这既有优点也有缺点,因为这也意味着 Linux、Windows 和 Android 等操作系统需要支持更广泛的硬件。

但这并不表示 ARM 架构只能用于移动端——由富士通和 Riken 设计的世界上最快的超级计算机 Fugaku 便使用了 ARM 处理器。在富士通的案例中,他们为超级计算机设计了自己的 ARM 芯片,但 ARM 也为 HPC 架构提供了设计配置文件。由于尺寸更小、功耗更低和发热量更少(减少额外散热的需求),因此有越来越多的企业开始使用 ARM 系统为 HPC 和云应用创建节点和集群(例如 Amazon Web Services Graviton微软 Azure )。Linux 版 Arm 编译器工具链是专为开发 HPC 应用而设计的。在集成现有应用、用例和 ARM 处理器时,评估它们之间的兼容性至关重要。

使用 ARM 架构可以让硬件设计人员更好地控制设计和性能,以及更好地控制自己的供应链。这种控制和性能的结合,在小型消费设备和大规模计算环境等方面都十分具有吸引力。

ARM 架构的机器使用 Linux 操作系统(尤其是树莓派开发板以及三星和 Apple 的智能手机等设备中)由来已久。而且,ARM 处理器和 Linux 之间还有一段传奇的开发历史:每个 ARM 设计方案都必须有自己的定制 Linux 内核版本号,这是因为 ARM 的设计方案之间缺乏一致性,即使在同一制造商或型号中也是如此。这一点在 2012 年得以改观,当时 Linux 内核社区在 Linux 内核中添加了对 ARM SOC 的多平台支持。

Arm Holdings 也通过 SystemReady 系列计划定义了支持 Linux 服务器和工作站的特定架构。这些架构设定了硬件、固件、启动要求和安全性方面的规范。支持 ARM 的红帽企业 Linux 已通过 Arm SystemReady SR 认证。SystemReady 计划旨在确保技术栈中的每一层(从操作系统开始)都能正常工作。

社区是 ARM 设计方案的一个关键要素。红帽订阅的优势之一就是拥有广泛的硬件供应商,不仅进行工程方面的协作,而且都通过了部署测试和认证。这其中也包括 ARM 硬件制造商和设计团队。由于 ARM 本身就与硬件设计密不可分,因此红帽企业 Linux 与其硬件生态系统供应商之间达成了抢先体验计划,以便试用新的 ARM 开发工作。

得益于红帽在 ARM 社区和红帽企业 Linux 开源企业生命周期、安全性和性能方面的投入,使红帽企业 Linux 成为 ARM 工作负载的绝佳平台。

扩展阅读

文章

使用红帽企业 Linux 进行边缘计算

红帽企业 Linux 可助您将混合云基础架构扩展至边缘——遍布全球的数十万个节点。

文章

SELinux 是什么?

安全增强型 Linux(SELinux)是一种采用安全架构的 Linux® 系统,它能够让管理员更好地管控哪些人可以访问系统。

文章

为什么选择红帽 Linux?

工作负载需要能够在各个环境中移植和扩展。红帽企业 Linux 是混合云部署中持续一致、稳定可靠的基础。