一文搞懂 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 ...
随机推荐
- Linux 复制时排除某文件/目录
如果要排除/home/data目录下面的a.b.c.三个目录,同时拷贝其它所有目录,执行rsync命令yum install rsync -y #安装rsync 排除单个文件/目录rsync -avP ...
- Matlab:4维、单目标、约束、粒子群优化算法
% 主调用函数(求最大值) clc; clear; close all; % 初始化种群 N = 100; % 初始种群个数 D = 4; % 空间维数 iter = 50; % 迭代次数 x_lim ...
- MySql.Data 链接MySql数据库 查询语句中带有中文的奇怪问题
首先Nuget管理器安装MySql.Data 1.ado.net 直接链接 public static void Test() { MySqlConnection myconn = null; MyS ...
- vulhub的搭建
官网简介:Vulhub是一个基于docker和docker-compose的漏洞环境集合,进入对应目录并执行一条语句即可启动一个全新的漏洞环境,让漏洞复现变得更加简单,让安全研究者更加专注于漏洞原理本 ...
- 查看Doris表占用空间
近期想统计下各表占用的存储空间大小,官网文档SHOW-TABLE-STATUS给的语句很简单,但是对于列的含义写的不是很明白,我写入数据验证了一下. Doris版本:1.2 查看当前数据库下所有表的信 ...
- etcd详解
etcd原理详解 etcd概述 etcd的特点 etcd是一个Go言编写的分布式.高可用的一致性键值存储系统,用于提供可靠的分布式键值存储.配置共享和服务发现等功能 etcd具有以下特点: 简单: 易 ...
- ExcelDataReader插件的使用
NPOI插件的弊端 刚来公司的时候公司软件导入导出操作都使用微软的office组件来实现,大家应该都知道这个组件有很大的弊端,就是运行主机上面必须安装office组件才可进行使用,不然无法进行导入导出 ...
- Django笔记十之values_list指定字段取值及distinct去重处理
这篇笔记将介绍 reverse.distinct.values 和 values_list 的用法. 本篇笔记目录如下: reverse() values() values_list() distin ...
- GLM:通用语言模型
ChatGPT已经火了一段时间了,国内也出现了一些平替,其中比较容易使用的是ChatGLM-6B:https://github.com/THUDM/ChatGLM-6B ,主要是能够让我们基于单卡自己 ...
- VUE插值语法
目录 基本使用 基本使用 在body中创建一个标签,一般使用div,定义好id后,在script中进行定义,在前台使用{{变量}}的形式进行调用,语法如下: <!DOCTYPE html> ...