一文搞懂 x64 IA-64 AMD64 Inte64 IA-32e 架构之间的关系
想要搞清楚 x64、IA64、AMD64 指令集之间的关系,就要先了解 Intel 和 AMD 这两家公司在生产处理器上的发展历史。

x86 处理器
1978年 Intel 生产了它的第一款 16bit 处理器8086,之后几款处理器名字也都以86结尾,包括80186,80286, 80386,80486,这些处理器的架构被统一称为 x86 架构。其中8086、80186、80286是 16bit 处理器,80386和80486是 32bit 处理器,32bit 处理器向前兼容 16bit 的处理器。由于指令集属于处理器架构层面,因此这些处理器使用的指令集被称为 x86 指令集。后来 Intel 生产了比如奔腾、Xeon 等新的 32bit 处理器,它们仍然使用 x86 架构。
The CPU architecture defines the basic instruction set, and the exception and memory models that are relied on by the operating system and hypervisor.
The CPU microarchitecture determines how an implementation meets the architectural contract by defining the design of the processor and covering such things as: power, performance, area, pipeline length, and levels of cache.
针对 32bit 的 x86 系列处理器,Intel 给了一个全新的处理器架构名字 IA-32。同时由于 80386 是 Intel 第一款 32bit 处理器,32bit 的 x86 系列处理器也被称为 i386 处理器。总之,IA-32 与 i386 处理器都是指 Intel 的 32 bit 处理器,而 x86 处理器可能是 32bit 的,也可能是 16bit 的。但是无论是 32bit 还是 16bit,他们都属于 x86 架构,使用 x86 指令集。

合作
当1978年 Intel 生产出它的 x86 处理器时,1981年 IBM 生产了第一台个人 PC 电脑,并且希望搭载 Intel 的 x86 处理器。不过,为了防止 Intel 作为 x86 处理器唯一的供应商后期一家独大,IBM 留了一个心眼,提出 Intel 如果想合作,就必须授权另一家公司,也能生产 x86 处理器。为了达成这次合作,Intel 找到了 AMD 公司,签了一个10年期协议,将 x86 架构授权给 AMD,让 AMD 可以生产基于 x86 架构的处理器。
AMD(Advanced Micro Devices) 公司早期主要从事存储器生产,生产的存储器也会卖给 Intel 公司使用。1975年,AMD 开始涉足处理器市场,但是当时对 Intel 还够不成威胁。通过1981年这次和 Intel 的合作,AMD 经过10年来发展迅猛,已经成为 Intel 在处理器市场上最大的一个劲敌,Intel 完全可以说是养虎为患。
由于 AMD 和 Intel 生产的 CPU 都是基于 x86 架构,所以,在使用 Intel 处理器电脑上能运行的软件,在使用 AMD 处理器上的电脑也可以运行。

x64 处理器
时间来到1999年,Intel 向世界宣布了它全新的 64bit 处理器安腾,其使用的架构被命名为 IA-64。不过由于 Intel 过于激进,IA-64 架构并不兼容 x86 处理器,也就是原先众多运行在 x86 处理器上的 32bit 软件,完全不能运行在 IA-64 处理器上。这种不兼容问题,很快让 Intel 遭遇了滑铁卢,基于 IA-64 架构的安腾处理器并未得到市场的广泛认可。
就在 Intel 宣布安腾处理器的第二天,AMD 公司也向世界公布了自己全新的 64bit 处理器架构 AMD64。AMD64 架构可以看成是 x86 架构的扩展,完全向下兼容 x86 处理器,得到了市场的强烈反响。Intel 眼见大事不妙,赶忙调整了技术方向,放弃了之前的 IA-64 架构,采用了几乎与 AMD64 完全一样的技术方案,实现了自己的兼容 x86 处理器的 64bit 架构。不过为了面子,Intel 一开始将自己的 64bit 架构命令为 EM64T,后来又改为 IA-32e,再后来又改为 Intel64,总之就是只字不提 AMD 三个字。
由于 Intel 和 AMD 64bit 处理器都是遵循同样的架构,因此它们被统一被称为 x64 处理器。

一文搞懂 x64 IA-64 AMD64 Inte64 IA-32e 架构之间的关系的更多相关文章
- 一文搞清楚Minor GC、Major GC 、Full GC 之间的关系
前言 文章要求读者熟悉 JVM 内置的通用垃圾回收原则.堆内存划分为 Eden.Survivor 和 Tenured/Old 空间,代假设和其他不同的 GC 算法超出了本文讨论的范围. Minor G ...
- 一文搞懂所有Java集合面试题
Java集合 刚刚经历过秋招,看了大量的面经,顺便将常见的Java集合常考知识点总结了一下,并根据被问到的频率大致做了一个标注.一颗星表示知识点需要了解,被问到的频率不高,面试时起码能说个差不多.两颗 ...
- 一文搞懂RAM、ROM、SDRAM、DRAM、DDR、flash等存储介质
一文搞懂RAM.ROM.SDRAM.DRAM.DDR.flash等存储介质 存储介质基本分类:ROM和RAM RAM:随机访问存储器(Random Access Memory),易失性.是与CPU直接 ...
- 基础篇|一文搞懂RNN(循环神经网络)
基础篇|一文搞懂RNN(循环神经网络) https://mp.weixin.qq.com/s/va1gmavl2ZESgnM7biORQg 神经网络基础 神经网络可以当做是能够拟合任意函数的黑盒子,只 ...
- 一文搞懂 Prometheus 的直方图
原文链接:一文搞懂 Prometheus 的直方图 Prometheus 中提供了四种指标类型(参考:Prometheus 的指标类型),其中直方图(Histogram)和摘要(Summary)是最复 ...
- Web端即时通讯基础知识补课:一文搞懂跨域的所有问题!
本文原作者: Wizey,作者博客:http://wenshixin.gitee.io,即时通讯网收录时有改动,感谢原作者的无私分享. 1.引言 典型的Web端即时通讯技术应用场景,主要有以下两种形式 ...
- 一文搞懂vim复制粘贴
转载自本人独立博客https://liushiming.cn/2020/01/18/copy-and-paste-in-vim/ 概述 复制粘贴是文本编辑最常用的功能,但是在vim中复制粘贴还是有点麻 ...
- 三文搞懂学会Docker容器技术(中)
接着上面一篇:三文搞懂学会Docker容器技术(上) 6,Docker容器 6.1 创建并启动容器 docker run [OPTIONS] IMAGE [COMMAND] [ARG...] --na ...
- 三文搞懂学会Docker容器技术(下)
接着上面一篇:三文搞懂学会Docker容器技术(上) 三文搞懂学会Docker容器技术(中) 7,Docker容器目录挂载 7.1 简介 容器目录挂载: 我们可以在创建容器的时候,将宿主机的目录与容器 ...
- 一文搞懂 js 中的各种 for 循环的不同之处
一文搞懂 js 中的各种 for 循环的不同之处 See the Pen for...in vs for...of by xgqfrms (@xgqfrms) on CodePen. for &quo ...
随机推荐
- 初识MPC
MPC调研报告 这是一篇关于MPC的调研报告,主要介绍了我对MPC领域的一些基础认识.全文按照这样的方式组织:第一节我介绍了什么是MPC以及MPC的起源:第二节介绍了MPC领域常用的一些符号和安全 ...
- 京东-Docker
关于 Docker 版本的<使用与更新>教程修订日期:2021年 3 月 14 日ㅤ 一.基础使用教程1. 进入与退出容器:docker exec -it jd /bin/bash注意:e ...
- Vue 解决先渲染 暂无数据
// 组件 data(){ return { data:null // 设置默认值为null } } // template <div v-show="data != null&quo ...
- webservice学习随笔(一):简单的webservice实例
一.webService概念简单介绍: 简单来说,webservice就是远程调用技术,也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的 ...
- Redis在线安装+三种启动方式(自启配置)
1.下载 1)检查是否安装wget插件 $ wget --version 2)如未安装,使用yum进行安装 $ yum install -y wget 3)下载redis安装包 $ wge ...
- rsync+inotify组合实现实时同步
首先准备两台服务器(centos7) A:192.168.75.160 B:192.168.75.161 A机器当做客户端,B机器当做服务端 rsync 安装 客户端服务器端都要安装rsync ,但是 ...
- DRF提供的请求与响应类
一 内容协商 drf除了在数据序列化部分简写代码以外,还在视图中提供了简写操作.所以在django原有的django.views.View类基础上,drf封装了多个视图子类出来提供给我们使用. Dja ...
- 你的梦想家居「GitHub 热点速览」
上周推荐的 ChatGPT 版小爱,不知道有哪些小伙伴回去尝试接入了呢?本周依旧由 2 个不错的 ChatGPT 延伸项目,一个是比 DeepL.Grammarly 更懂你的划词翻译 openai-t ...
- JavaWeb学习笔记第三弹
一.数据库设计 1.软件研发步骤 2.数据库设计概念 建立数据库中的表结构以及表与表之间的关联关系的过程 3.数据库设计的步骤 表关系:一对一.一对多(多对一).多对多 表关系之一对多 表关系之多对多 ...
- 微软出品自动化神器【Playwright+Java】系列(十二)测试框架的设计与开发
一.前言 大家好,我是六哥! 又有好长一段时间没更文了,不是我懒,而是确实在更文上,没有以前积极了,这里是该自我检讨的. 其实不是我不积极,而是相对更文学习来说,优先级不是最高. 对我而言,目前最重要 ...