加入收藏 | 设为首页 | 会员中心 | 我要投稿 海南站长网 (https://www.0898zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Unix > 正文

x86,x64,x86-64,amd64,arm指令集架构之间的关系

发布时间:2022-12-07 14:03:37 所属栏目:Unix 来源:未知
导读: 在 知乎 看到下边的问题,之前自己对这些概念也是迷迷糊糊,索性总结一下吧。

没有 x32 的说法, x86、x64 都指的是 CPU 的指令集架构。
指令集
所谓指令集,可以理解成硬件对外的接口。我

在 知乎 看到下边的问题,之前自己对这些概念也是迷迷糊糊,索性总结一下吧。

unix系统结构_unix 系统下载_unix 结构文件

没有 x32 的说法, x86、x64 都指的是 CPU 的指令集架构。

指令集

所谓指令集,可以理解成硬件对外的接口。我们运行程序是通过操作系统调度,操作系统然后让硬件去计算。

让硬件计算的话,比如一些加法乘法,循环之类的,就需要硬件提供的接口,也就是指令集。这个就是我们常说的机器语言,已经到了计算机的最底层了。

指令集架构主要分两大类。

简单的理解就是提供的指令很多,也都很复杂。

以 intel 的 x86 架构为代表,主要针对的操作系统是微软的 Windows 和苹果的 maxOS。另外 Linux,一些 UNIX 等,都可以运行在复杂指令集架构的微处理器。

简单的理解就是提供的指令很少,也都比较简单,只是一些基础的指令。

以 ARM 公司的 arm 架构为代表。当前有 UNIX、Linux 以及包括 iOS、Android、Windows Phone 等在内的大多数移动操作系统运行在精简指令集的处理器上。

复杂指令集和精简指令集比较的话,区别在于我们编程(直接写机器语言代码在 CPU上运行)的时候,比如实现乘法。根据提供的指令,复杂指令集可能一条命令就够了,而简单指令集我们可能需要加法、循环等多条指令。

硬件和软件也就是互补的过程,当硬件提供功能简单了,写软件就复杂些。当硬件提供的功能多了,写软件就简单些。

x86 架构发展

x86 架构于 1978 年推出的 Intel 8086 中央处理器中首度出现,8086 在三年后为 IBM PC 所选用,之后 x86 便成为了个人电脑的标准平台,成为了历来最成功的 CPU 架构。8086 是 16 位处理器,接着一系列的处理器进行了 32 位架构的改进,现在 x86 一般指 32 位的架构。

该系列较早期的处理器名称是以数字来表示 80x86。由于以 86 作为结尾,包括 Intel 8086、80186、80286、80386 以及 80486,因此其架构被称为 x86。

生产 x86 架构的 CPU 除了因特尔,它还把专利授权给了现在比较出名的超微(AMD)。然后在 1999 年 AMD 首次公开 64 位集以扩展 x86,此架构称为 AMD64。后来英特尔也推出了与之兼容的处理器,并命名Intel 64。两者一般被统称为 x86-64 或 x64,开创了 x86 的 64 位时代。

这里会有一个疑问 ,Intel 去哪里了,为什么没有率先做 64 位的?其实 intel 做了,为了不让其他厂商模仿,申请了很多专利,与惠普联合设计了全新的架构 IA-64 ,但最大的问题就是它与之前的 x86 不兼容,且市场反应较冷淡,然后就凉凉了。

苹果公司和 RPM 包管理员以 x86-64 或 x86_64 称呼此 64 位架构。甲骨文公司及 Microsoft 称之为x64。BSD 家族及其他 Linux 发行版则使用 amd64,32 位版本则称为i386(或 i486/586/686),Arch Linux 用x86_64 称呼此 64 位架构。

现在 x86 架构的CPU 的话基本上就是 Intel 和 AMD 两家公司了。

arm 架构发展

arm 架构的话就是 ARM 公司的,这家公司不生产芯片,而是以授权的方式盈利。具体发展可以参考 这里 和 这里 。从诺基亚到苹果手机、安卓手机,奠定了其在智能手机市场的霸主地位。16 年的时候 ARM 公司被日本软银收购了。

现在常听到的高通骁龙系列就是 arm 架构。

软件安装

有时候在 github 上下载安装包的时候需要选择自己 CPU 的架构情况了。会提供不同操作系统的三种架构, x86 的 32 位架构和 64 位架构,以及 arm 架构。

unix系统结构_unix 系统下载_unix 结构文件

我的 CPU 的话是 intel 的酷睿 i5,架构的话现在基本上是 x64,或者说是 amd64 了。

unix系统结构_unix 结构文件_unix 系统下载

linux 中使用命令 uname -a 可以查看 CPU 的架构。

Linux DESKTOP-68NS8J3 3.4.0+ #1 PREEMPT Thu Aug 1 17:06:05 CST 2013 x86_64 x86_64 x86_64 GNU/Linux

总结

CPU 指令集架构目前主要是两大类。

复杂指令集是 x86、x64(也叫 x86-64, amd64) 两种架构,专利在 Intel 和 AMD 两家公司手里, 该架构 CPU 主要是 Intel 和 AMD 两家公司,这种 CPU 常用在 PC 机上,包括 Windows,macOS 和 Linux。

简单指令集是 arm 一种架构,专利在 ARM 公司手里,该架构 CPU 主要有高通、三星、苹果、华为海思、联发科等公司。这种 CPU 常用在手机上,包括安卓和苹果。

再多说一句,之前也写过 linux 发展的一些历史,就和操作系统一样,我们能设计出一个全新的操作系统,但是各种软件都需要在新的系统上重新开发,软件商愿不愿意就不一定了。

同样的unix系统结构,我们也能设计出一个新的指令集架构,但是还是生态的问题,现在安卓、苹果的操作系统都是在 arm 架构上的,所以你的新指令集架构还需要安卓再适配一个新的操作系统,安卓不愿意的话,你可以自己出一个新的操作系统,但又回到了最初的问题,各种软件也需要重写。

如果兼容之前的指令集架构或者操作系统的话,那可能就绕不开各种专利的问题了。

所以现在各种公司利益都是紧密相连的,合作才能共赢。

(编辑:海南站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章