网易首页 > 网易号 > 正文 申请入驻

arm vs AArch64 vs amd64 vs x86_64 vs x86:有什么区别? | Linux 中国

0
分享至

导读:当涉及到 CPU 的时候,有许多术语:AArch64、x86_64、amd64、arm 等等。了解它们是什么以及它们之间的区别。

本文字数:6100,阅读时长大约: 8分钟

https://linux.cn/article-16224-1.html
作者:Pratham Patel
译者:ChatGPT


当涉及到 CPU 的时候,有许多术语:AArch64、x86_64、amd64、arm 等等。了解它们是什么以及它们之间的区别。

当你查看数据表或软件下载页面时是否被ARMAArch64x86_64i386等术语混淆?这些被称为 CPU 架构,我会帮你深入了解这个计算话题。

以下的表将为你总结每个字符串所代表的意义:

< 如显示不全,请左右滑动 >


CPU 架构 描述x86_64x86amd6464 位 AMD/英特尔 CPU 的别称AArch64arm64ARMv8ARMv964 位 ARM CPU 的别称i38632 位 AMD/英特尔 CPUAArch32armARMv1ARMv732 位 ARM CPU 的别称rv64gcrv64g64 位 RISC-V CPU 的别称ppc64le64 位 PowerPC CPU,小端字节序存储

从左到右是使用该术语来描述 CPU 架构超过其右侧其他可选用术语的偏好。

从左到右是使用该术语描述 CPU 架构的优先级,使用左侧的而不是其右侧的其他可供选择的术语。

如果你像我一样是个极客,并想要更深入地解释,请继续阅读!

概述:CPU 架构

通常来说,我之前列出的术语是描述 CPU 架构的。但严格讲,它们被计算机工程师视为 CPU 的 指令集架构(Instruction Set Architecture)(ISA)。

CPU 的指令集架构定义了 CPU 如何解析二进制代码中的 1 和 0。

这些 CPU 的 ISA 有几个主要的类别:

◈ x86(AMD/英特尔)

◈ ARM

◈ RISC-V

◈ PowerPC(IBM 仍在使用)

当然,还有更多种类的 CPU ISA,比如 MIPS、SPARC、DEC Alpha 等等。但我列出的这些至今仍然被广泛使用(以某种形式)。

上述列出的 ISA 主要根据 内存总线的宽度 分为至少两个子集。内存总线的宽度指的是 CPU 和 RAM 一次能传输的位数。内存总线有很多种宽度,但最常见的是 32 位和 64 位。

32 位的 CPU ISA 要么是已经过时的历史产物,被留下来要么只是为了支持旧的系统,要么只运用在微控制器中。可以说,所有新的硬件都已经是 64 位的了,特别是那些面向消费者的硬件。

x86(AMD/英特尔)

x86 CPU 的指令集架构主要源于英特尔,因为英特尔是最初搭配 8085 微处理器创建了它。8085 微处理器的内存总线宽度为 16 位。而后来,AMD 加入了这个领域,并且一直紧随英特尔的步伐,直到 AMD 创建出了自己的超集 64 位架构,超过了英特尔。

x86 架构的子集如下:

i386:如果你拥有的是 2007 年之前的 CPU,那么这可能就是你的 CPU 架构。它是现在使用的 AMD/英特尔的 x86 架构的 32 位“版本”。

x86_64/x86/amd64:这三个术语在不同的项目中可能会被交替使用。但它们都是指 x86 AMD/英特尔架构的 64 位“版本”。无论如何,x86_64这个字符串比x86amd64使用得更广泛(也更受欢迎)。例如,FreeBSD 项目称 64 位的 x86 架构为amd64,而 Linux 和 macOS 则称之为x86_64


由于 AMD 在创造 64 位 ISA 上超越了英特尔,所以一些项目(比如 FreeBSD)把 x86 的 64 位版本称为 amd64。但更被广泛接受的术语还是 x86_64。

对于 CPU ISA,“x86” 这个字符串是一种特殊的情况。你要知道,在从 32 位的 x86(i386)到 64 位的 x86(x86_64)的过渡过程中,CPU 制造商确保了 CPU 能够运行 32 位 和 64 位指令。所以,有时你可能会看到x86也被用来意指“这款产品只能运行在 64 位的计算机上,但如果该计算机能运行 32 位指令,那么你也可以在它上面运行 32 位的用户软件”。

这种 x86 的模糊性——也就是诸如能同时运行 32 位代码的 64 位处理器——其主要用于和存在于运行在 64 位处理器上的,但是允许用户运行 32 位软件的操作系统,Windows 就通过这种被称作“兼容模式”的特性运用了这种方式。

汇总一下,由 AMD 和 英特尔 设计的 CPU 有两种架构:32 位的(i386)和 64 位的(x86_84)。

其它的英特尔

x86_64ISA 实际上有几个子集。这些子集都是 64 位,但它们新添加了诸如 SIMD(单指令多数据(Single Instruction Multiple Data))指令等功能。

x86_64-v1:这是大多数人都熟知的基础x86_64ISA。当人们谈论x86_64时,他们通常指的就是x86_64-v1ISA。

x86_64-v2:此版本新增了更多如 SSE3( 流式 SIMD 扩展版本 3(Streaming SIMD Extensions 3))之类的指令扩展。

x86_64-v3:除了基础指令外,还新增了像 AVX( 高级矢量扩展(Advance Vector eXtensions))和 AVX2 等指令。这些指令可以使用高达 256 位宽的 CPU 寄存器!如果你能够有效利用它们,就能大规模并行处理计算任务。

x86_64-v4:这个版本在x86_64-v3ISA 的基础上,迭代了更多的 SIMD 指令扩展,比如 AVX256 和 AVX512。其中,AVX512 可以使用高达 512 位宽的 CPU 寄存器

ARM

ARM 不仅是一家为 CPU ISA 制定规范的公司,它也设计并授权给其他厂商使用其 CPU 内核,甚至允许其他公司使用 ARM CPU ISA 设计自己的 CPU 内核。(最后那句话听起来就像是个 SQL 查询似的!)

你可能因为如树莓派这类的 单板计算机(Single Board Computer))(SBC)听说过 ARM。但其实 ARM 的 CPU 还广泛应用于手机中。最近,苹果从使用x86_64处理器转向了在其笔记本和台式机产品中使用自家设计的 ARM 处理器。

就像任一种 CPU 架构一样,ARM 基于内存总线宽度也有两个子集。

官方认定的 32 位和 64 位 ARM 架构的名称分别是AArch32AArch64。这里的AArch字符串代表 “Arm 架构(Arm Architecture)”。这些是 CPU 执行指令时可切换的模式。

实际符合 ARM 的 CPU ISA 的指令规范被命名为ARMvX,其中X是规范版本的代表数字。目前为止,已经有九个主要的规范版本。规范ARMv1ARMv7定义了适用于 32 位 CPU 的架构,而ARMv8ARMv9是适用于 64 位 ARM CPU 的规范。( en.wikipedia.org)

每个 ARM CPU 规范又有进一步的子规范。例如 ARMv8,我们有 ARMv8-R、ARMv8-A、ARMv8.1-A、ARMv8.2-A、ARMv8.3-A、ARMv8.4-A、ARMv8.5-A、ARMv8.6-A、ARMv8.7-A、ARMv8.8-A 和 ARMv8.9-A。其中 -A 表示“应用核心”,-R 表示“实时核心”。

你可能会觉得困惑,为什么在AArch64正式被 ARM 认定为 64 位 ARM 架构后,有些人仍然称其为arm64。原因主要有两点:

1.arm64这个名称在 ARM 决定采用AArch64之前就已经广为人知了。(ARM 的一些官方文档也将 64 位的 ARM 架构称为arm64…… )

2. lore.kernel.org 因此,Linux 的代码库主要将AArch64称为arm64。然而,当你在系统中运行uname -m时,输出仍然是aarch64

因此,对于 32 位 ARM CPU,你应该寻找AArch32这个字符串,但有时也可能是armarmv7。相似的,对于 64 位 ARM CPU,你应该找AArch64这个字符串,但有时也可能会是arm64ARMv8ARMv9

RISC-V

RISC-V 是 CPU 指令集架构(ISA)的一个开源规范。**但这并不意味着 CPU 自身是开源的!**这有点像以太网的情况。以太网规范是开源的,但你需付费购买网线、路由器和交换器。同样,RISC-V CPU 也要花钱购买。

尽管如此,这并没有阻止人们创建并在开源许可下提供免费获取(设计上的获取,并非物理核心/SoC)的 RISC-V 核心。 github.com。

总结一下:如果你在寻找运行于 RISC-V 消费级 CPU 上的软件,你应该寻找 “rv64gc” 这一字符串。这是许多 Linux 发行版所公认的。

像所有 CPU 架构一样,RISC-V 拥有 32 位和 64 位 CPU 架构。但由于 RISC-V 是非常新的描述 CPU ISA 的方式,大部分主流消费端或客户端的 CPU 核心一般都是 64 位的。大部分 32 位的设计都是微控制器,用于非常具体的用例。

它们的区别在于 CPU 的扩展。被称为 RISC-V CPU 的最低要求即实现“基本整数指令集(Base Integer Instruction Set)”(rv64i)。

下表列出了一些扩展及其描述:

< 如显示不全,请左右滑动 >


扩展名称 描述rv64i64 位基本整数指令集(必须的m乘法和除法指令a原子指令f单精度浮点指令双精度浮点指令g别名;一组运行通用操作系统所需的扩展集(包括imafdc压缩指令

rv64i这一字符串中,rv表示 RISC-V,64指的是 64 位 CPU 架构,而i指的是强制性的基本整数指令集扩展。rv64i之所以是一体的,因为即使i被认为是一种“扩展”,但它是必须的。

约定俗成的,扩展名称按上述特定顺序排列。因此,rv64g展开为rv64imafd,而不是rv64adfim

还有其他一些像 Zicsr 和 Zifencei 这样的扩展,它们位于 d 和 g 扩展之间,但我故意不列出,以避免令你感到害怕。 因此,严格说来,(在写这篇文章的时候)rv64g 实际上是 rv64imafdZicsrZifencei。恶魔般的笑声

PowerPC

PowerPC 曾是苹果、IBM 以及,摩托罗拉早期合作时代的一种流行 CPU 架构。在苹果转向英特尔的 x86 架构之前,它一直被应用于苹果的全部消费品产品线。

最初,PowerPC 采取的是大端字节序的内存排序。后来随着 64 位架构的引入,增加了使用小端字节排序的选项。这么做的目的是为了与英特尔的内存排序保持兼容(以防止软件错误),因为英特尔自始至终都一直采用的是小端字节序。有关字节序的更多内容,我可以唠叨很久,不过你可以通过阅读 developer.mozilla.org 来了解更多。

由于字节序在此也起到了一定的作用,PowerPC 共有三种架构:

powerpc:表示 32 位的 PowerPC 架构。

ppc64:表示拥有大端字节序内存排序的 64 位 PowerPC 架构。

ppc64le:表示拥有小端字节序内存排序的 64 位 PowerPC 架构。

目前,ppc64le是被广泛使用的架构。

结论

市面上有各种各样的 CPU 架构。对于每一种架构,都有 32 位和 64 位的子集。在现有的 CPU 中,我们可以找到 x86、ARM、RISC-V 和 PowerPC 等架构。

其中,x86 是最广泛和易于获取的 CPU 架构,因为英特尔和 AMD 都采取了这种架构。此外,ARM 提供的产品几乎在手机和易于获取的单板计算机中被独占使用。

RISC-V 正在努力使硬件更广泛地被使用。我就有一款带有 RISC-V CPU 的单板计算机。

而 PowerPC 主要用于服务器,至少当前如此。

(题图:MJ/634ac7ea-b344-443a-b041-3bb3b31a956f)

via:

作者: 选题: 译者: 校对:

本文由 原创编译, 荣誉推出

欢迎遵照 CC-BY-SA 协议规定转载,

如需转载,请在文章下留言 “ 转载:公众号名称”,

我们将为您添加白名单,授权“ 转载文章时可以修改”。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
上海警方:编造“中山公园地铁站捅人”谣言及地铁行凶虚假视频,两人被行拘

上海警方:编造“中山公园地铁站捅人”谣言及地铁行凶虚假视频,两人被行拘

界面新闻
2024-06-20 12:18:04
马伊琍女儿庆祝父亲节,与爸爸文章罕见同框,40岁文章已满头白发

马伊琍女儿庆祝父亲节,与爸爸文章罕见同框,40岁文章已满头白发

橘子大娱社
2024-06-18 19:20:02
董子健陪女儿在街边跳舞超有爱,6岁大福长得像爸爸,气质随孙怡

董子健陪女儿在街边跳舞超有爱,6岁大福长得像爸爸,气质随孙怡

娱絮
2024-06-20 09:51:05
乔治:交易来哈登增强了进攻,但脏活都我和莱昂纳德来干了

乔治:交易来哈登增强了进攻,但脏活都我和莱昂纳德来干了

懂球帝
2024-06-20 13:17:09
河南女学霸2次高考查分,从627分变成335分,到底怎么回事?

河南女学霸2次高考查分,从627分变成335分,到底怎么回事?

莉雅细细谈
2024-06-17 20:44:48
会做饭的留学生地位有多高?网友:一年挣够两年学费外加两套楼房

会做饭的留学生地位有多高?网友:一年挣够两年学费外加两套楼房

糖逗在娱乐
2024-06-19 13:59:19
浙大跌出前三,武大险胜人大!2024中国综合类大学排行榜出炉

浙大跌出前三,武大险胜人大!2024中国综合类大学排行榜出炉

一口娱乐
2024-06-18 21:58:48
“中国首次将核弹头置于高度战备状态”

“中国首次将核弹头置于高度战备状态”

枢密院十号
2024-06-17 23:44:53
1953年,4架美机击落苏联客机,声称“误会”,2天后就吃了哑巴亏

1953年,4架美机击落苏联客机,声称“误会”,2天后就吃了哑巴亏

文史达观
2024-06-18 06:45:02
没想到老年人的瓜这么多!网友的评论太炸裂,我小脑都萎缩了

没想到老年人的瓜这么多!网友的评论太炸裂,我小脑都萎缩了

夢婷
2024-01-05 12:09:08
北交所IPO|扬德环能提交注册超7个月仍未获批,关联方与子公司或经营混同,内控有效性屡遭问询

北交所IPO|扬德环能提交注册超7个月仍未获批,关联方与子公司或经营混同,内控有效性屡遭问询

时代商学院
2024-06-20 10:01:20
余琦被立案了!大3岁老公低调露面,同事曝光她一路高升的内幕

余琦被立案了!大3岁老公低调露面,同事曝光她一路高升的内幕

小鹿姐姐情感说
2024-06-19 17:14:53
克宫传来重磅消息,普京的野心远不止在朝鲜,美韩找中国,不管用

克宫传来重磅消息,普京的野心远不止在朝鲜,美韩找中国,不管用

千里持剑
2024-06-19 16:50:48
网友发帖:BOSS直聘这么一个小app,员工为啥要5000人?

网友发帖:BOSS直聘这么一个小app,员工为啥要5000人?

闲醉山人
2024-06-19 23:59:16
北大硕士赵斌:姜萍连题目都看不懂,点名王润秋,说错愿承担后果

北大硕士赵斌:姜萍连题目都看不懂,点名王润秋,说错愿承担后果

东东趣谈
2024-06-18 17:25:07
股市大事件,高层终于下狠手,比央妈降息还有爆发力,明天要爆了

股市大事件,高层终于下狠手,比央妈降息还有爆发力,明天要爆了

一丛深色花儿
2024-06-20 14:56:10
以色列宣布一个月内解决所有哈马斯!下一个是真主党?

以色列宣布一个月内解决所有哈马斯!下一个是真主党?

项鹏飞
2024-06-19 15:33:32
总估值达60亿!纽约记者:蔡崇信正在出售篮网少量股份给科赫家族

总估值达60亿!纽约记者:蔡崇信正在出售篮网少量股份给科赫家族

直播吧
2024-06-19 23:57:13
上海这一夜,袒胸露乳的姚晨和金晨,败给了“全裹”出镜的俞飞鸿

上海这一夜,袒胸露乳的姚晨和金晨,败给了“全裹”出镜的俞飞鸿

秋姐居
2024-06-17 12:17:39
考公的斯坦福博士父母等情况披露!岗位限5年不能流出本乡镇

考公的斯坦福博士父母等情况披露!岗位限5年不能流出本乡镇

南方都市报
2024-06-18 19:18:05
2024-06-20 18:16:49
Linux
Linux
Linux 中国开源社区
8016文章数 73124关注度
往期回顾 全部

科技要闻

小米SU7流量泼天,富贵却被蔚来接住了

头条要闻

老人花20万带96岁母亲长住酒店养老 起纠纷后续住被拒

头条要闻

老人花20万带96岁母亲长住酒店养老 起纠纷后续住被拒

体育要闻

绿军的真老大,开始备战下赛季了

娱乐要闻

叶舒华参加柯震东生日聚会,五毒俱全

财经要闻

深圳一网红学位房14万/平跌到4万/平

汽车要闻

售价11.79-14.39万元 新一代哈弗H6正式上市

态度原创

房产
游戏
手机
健康
数码

房产要闻

海棠湾!一所重量级国际学校真的来了!

《燕云十六声》创新“单人+多人”联机模式

手机要闻

首发冰川电池续航灭霸!一加Ace 3 Pro下周见

晚餐不吃or吃七分饱,哪种更减肥?

数码要闻

苹果Vision Pro也无法挽救 全球VR头显出货量环比腰斩

无障碍浏览 进入关怀版