Intel x86-32 x86-64 IA-64

(1) x86-32
Intel 80386推出后,也许是到目前为止x86架构的最大跃进。除了需要值得注意的Intel 80386SX是32位架构但仅只有24位寻址(和16位数据总线)。除此之外其他架构都是32位 - 所有的寄存器、指令集、输出输入空间和存储器寻址。为了能够在后者所说的功能工作,要使用32位扩充的保护模式。然而不像286,386所有的区段可以使用32位的偏移量,即使存储器空间有使用区段,但也允许应用程序访问超过4GB空间而不需要区段的分隔。此外,32位保护模式提供分页的支持,是一种让虚拟内存得以实现的机制。
 
没有新的通用寄存器被加入。所有16位的寄存器除了区段寄存器外都扩充为32位。Intel在寄存器的助记符号上加入“E”来表示(因此扩充的AX变成EAX,SI变成ESI,依此类推)。因为有更多的寄存器数量、指令、和运算单元,因此机器码的格式也被扩充。为了提供与先前的架构兼容,包含运行码的区段可以被标示为16或是32位的指令集。此外,特殊的前置符号也可以用来在16位的区段包含32位的脚本,反之亦然。
 
分页跟区段的存储器访问是为了支持现在多任务操作系统所必须要的。Linux、386BSD、Windows NT和Windows 95都是一开始为386所发展,因为它是第一颗提供可靠地程序分离存储器空间的支持(每个程序拥有自己的寻址空间)以及可以在必要的情况下打断他们程序的运行(使用ring,一种x86保护模式下权力分级的名称)。这种386的基本架构变成未来所有x86系列发展的基础。
 
Intel 80386数学辅助运算处理器也在集成到这个CPU之后的x86系列中,也就是Intel 80486。新的FPU可以帮助浮点数运算,对于科学计算和图形设计是非常重要。
 
(2) x86-64
 
到2002年,由于32位特性的长度,x86的架构开始到达某些设计的极限。这个导致要处理大量的信息储存大于4GB会有困难,像是在数据库或是影片编辑上可以发现。
 
Intel原本已经决定在64位的世代完全地舍弃x86兼容性,推出新的架构称为IA-64技术作为他的Itanium处理器产品线的基础。IA-64与x86的软件天生不兼容;它使用各种模拟形式来运行x86的软件,不过,以模拟方式来运行的效率十分低下,并且会影响其他程序的运行。
 
AMD主动把32位x86(或称为IA-32)扩充为64位。它以一个称为AMD64的架构出现(在重命名前也称为x86-64),且以这个技术为基础的第一个产品是单内核的Opteron和Athlon 64处理器家族。由于AMD的64位处理器产品线首先进入市场,且微软也不愿意为Intel和AMD开发两套不同的64位操作系统,Intel也被迫采纳AMD64指令集且增加某些新的扩充到他们自己的产品,命名为EM64T架构(显然他们不想承认这些指令集是来自它的主要对手),EM64T后来被Intel正式更名为Intel 64。
 
这是由非Intel的制造商所发起和设计的第一次重大的x86架构升级。也许更重要的,它也是第一次Intel实际上从外部来源接受这项本质的技术。
 
(3) IA-64
EPIC(Explicitly Parallel Instruction Computers,精确并行指令计算机)是否是RISC和CISC体系的继承者的争论已经有很多,单以EPIC体系来说,它更像Intel的处理器迈向RISC体系的重要步骤。从理论上说,EPIC体系设计的CPU,在相同的主机配置下,处理Windows的应用软件比基于Unix下的应用软件要好得多。
 
Intel采用EPIC技术的服务器CPU是安腾Itanium(开发代号即Merced)。它是64位处理器,也是IA-64系列中的第一款。微软也已开发了代号为Win64的操作系统,在软件上加以支持。在Intel采用了X86指令集之后,它又转而寻求更先进的64-bit微处理器,Intel这样做的原因是,它们想摆脱容量巨大的x86架构,从而引入精力充沛而又功能强大的指令集,于是采用EPIC指令集的IA-64架构便诞生了。IA-64 在很多方面来说,都比x86有了长足的进步。突破了传统IA32架构的许多限制,在数据的处理能力,系统的稳定性、安全性、可用性、可观理性等方面获得了突破性的提高。
 
IA-64微处理器最大的缺陷是它们缺乏与x86的兼容,而Intel为了IA-64处理器能够更好地运行两个朝代的软件,它在IA-64处理器上(Itanium、Itanium2 ……)引入了x86-to-IA-64的解码器,这样就能够把x86指令翻译为IA-64指令。这个解码器并不是最有效率的解码器,也不是运行x86代码的最好途径(最好的途径是直接在x86处理器上运行x86代码),因此Itanium 和Itanium2在运行x86应用程序时候的性能非常糟糕。这也成为X86-64产生的根本原因。
 

你可能感兴趣的:(职场,休闲)