原文链接:http://blog.csdn.net/wyzxg/article/details/5027738

这几天在下载RPM包的时候,总会看见x86,x86-64,IA64,i386,i586等,这些都是cpu的架构,有点记不清了,所以特此记录下,以备日后查询

CPU架构

Architecture ,结构、架构,这个词用于 CPU 的时候是指 CPU “接受和处理信号的方式”,及其内部元件的组织方式。CPU架构
,从大的层面分两类——CISC、RISC

x86

CISC就是复杂指令集计算机,目前专指 x86 和 x86-64 两类

其中 x86 又叫 IA32,即 Intel Architecture 32(Intel32位架构),不管是Intel生产的 x86 CPU,还是AMD或者VIA生产的,都是 IA32,IA32 并非没有专利保护而是 AMD 和 VIA/Cyrix 通过交叉专利授权获得了 IA32 的使用权。

x86-64 又叫 AMD64,它的 Intel 版本叫做 EM64T(换个名字而已),是AMD在 IA32 的基础上扩展出来的一套 64位 CPU 架构,Intel 可以使用的原因也是因为 Intel和AMD之间的交叉专利授权。x86-64是AMD在其最新的Athlon 64处理器系列中采用的新架构,但这一处理器基础架构还是IA-32,在IA-32架构基础之上作了一些扩展,以支持64位程序的应用,进一步提高处理器的运算性能。x86-64相比Intel的64位服务器处理器产品Itanium和 Itanium 2系列处理器产品来说最大的优点就是可以全面兼容以前的32位x86架构的应用程序,保护以用户以前的投资;而Intel的Itanium和 Itanium 2系列处理器需要另外通过软件或硬件来实现对以前32位程序的兼容,所以IA-32(即x86-32)、x86-64都属于x86,即英特尔的32位x86架构,如Intel的32位服务器Xeon(至强)处理器系列、AMD的全系列,还有VIA的全系列处理器产品都属于x86架构的

IA-64

IA-64架构是英特尔为了全面提高以前IA-32位处理器的运算性能,是Intel和Hp共同开发了6年的64位CPU架构,是专为服务器市场开发的一种全新的处理器架构,它放弃了以前的x86架构,认为它严重阻碍了处理器的性能提高。它的最初应用是英特尔的Itanium(安腾)系列服务器处理器,现在最新的Itanium 2系列处理器也是采用这一架构的。由于它不能很好地解决与以前32位应用程序的兼容,所以应用受到较大的限制,尽管目前Intel采取了各种软、硬方法来弥补这一不足,但随着AMD Operon处理器的全面投入,Intel的IA-64架构的这两款处理器前景不容乐观。

RISC就是精简指令集计算机

除了以上所介绍的两类IA架构的服务器处理器外,还有一种主流的处理器架构,也可称之为“RISC”(其实它是一种按处理器指令执行方式划分的类型)。采用这一架构的仍是IBM、SUN和HP等。不过近几年由于这一处理器架构标准没有完全统一、处理器的发展和应用非常缓慢,使得原来本占有的绝大多数中高档服务器市场被IA架构瓜分了大部分江山,已是日趋衰落。目前连这几家服务器厂商也开始了自己放弃,转投IA旗下,推出越来越多的IA架构服务器,以保生存。

RISC就是精简指令集计算机,目前常见的有

一、IBM 的 POWER/PowerPC架构(Power G4、G5、G6、PowerXCell)

二、MIPS 的 MIPS架构(多家厂商,包括AMD也获授权生产,龙芯也是MIPS变种)

三、SUN 的 UltraSPARC架构(UltraSPARC III、IV、VI、T1、T2)

四、DEC 的 Alpha架构(现今少见,DEC被Compaq收购,Compaq又被HP收购)

五、Intel和HP 的 EPIC架构(Iantium、Iantium2),这也就是 IA64 架构,Intel Architecture 64(Intel64位架构),有时单独列为一类而不算RISC

六、Transmeta(全美达)的 VLIW(超长指令字)架构,和 IA64 在设计思想上有某种程度上的神似之处,有时也单独列为一类而不算RISC

七、Acorn的 ARM架构(类似于 MIPS 也授权多家公司制造,包括Intel),后来 Intel 还开发出 ARM的变种 XScale 架构

需要指出的是,现在的 Intel 和 AMD CISC处理器的内核其实都是 RISC内核,是在内核的外围电路中把复杂指令动态翻译成精简指令,然后送到 RISC内核中处理。严格来说,现代CPU本质上都是 RISC处理器。

IA32 : 32 bits Intel Architecture (32位带宽Intel构架)
IA64 : 64 bits Intel Architecture (64位带宽Intel构架)

i386 : Intel 386 ( 老的386机器,也泛指IA32体系的CPU)
i486 : Intel 486
i586 : Intel 586 ( Pentium ,K6 级别CPU )
i686 : Intel 686 ( Pentium II, Pentium III , Pentim 4, K7 级别CPU )

这几个i×86 也可以叫做 x86,早期intel的CPU编号都是如8086,80286等,由于这整个系列的CPU都是指令兼容的,所以都用X86来标识所使用的指令集合

理论了解后,对于使用者最想了解的就是这个cpu是32位的还是64位的?

通称说 x86也是指 IA32构架CPU,也就是说cpu是32位的,只能安装32位的os了;而x86-64或者IA-64是说cpu支持64位,可以安装64位的os,跑64位的应用

-----end----

几种CPU架构的更多相关文章

  1. MySQL该使用哪种CPU架构服务器?

    1. 摘要 近期,阿里云推出基于 ARM 架构的 RDS MySQL 和 RDS PostgreSQL 实例,现处于邀测阶段,阿里云宣传 ARM 架构的亮点是:在价格下降13%的基础上,平均性能 AR ...

  2. Android app中的so库和CPU架构

    一.android目前有几种cpu架构? 早期的Android系统几乎只支持ARMv5的CPU架构,目前支持七种CPU架构:ARMv5,ARMv7 (从2010年起),x86 (从2011年起),MI ...

  3. ios framework 分离与合并多种CPU架构,分离与合并模拟器与真机

    ios  framework 分离与合并多种CPU架构,分离与合并模拟器与真机 如果你所用的framework支持真机和模拟器多种CPU架构,而你需要的是其中的一种或几种,那么可以可以从framewo ...

  4. 让你分分钟读懂CPU架构及芯片厂商

    CPU架构是CPU厂商给属于同一系列的CPU产品定的一个规范,主要目的是为了区分 不同类型CPU的重要标示.目前市面上的CPU指令集分类主要分有两大阵营,一个是intel.AMD为首的复杂指令集CPU ...

  5. NDK(2)使用eclipse + ndk开发过程演示,含CPU架构编译

    环境linux + eclipse + adt + ndk 1,在ide中配置ndk 下载ndk,在eclipse中配置 2,使用ndk编程 2.1 给项目添加ndk 支持 右键 项目名 --> ...

  6. 关于CPU 架构与指令集的一些个人理解

    关于CPU 架构与指令集的一些个人理解 (理解不一定正确,只是目前的理解) 1.一般所说的X86,是指基于Intel X86架构处理器的一套指令集,即X86指令集: 2.CPU的架构是最底层的,是处理 ...

  7. 手机CPU架构体系分类及各大厂商

    手机cpu相关知识,这对于开发Android应用程序适应各个机型有一定的辅助作用 . 手机cpu架构体系分类 指令集可分为复杂指令集(CISC)和精简指令集(RISC)两部分,代表架构分别是x86.A ...

  8. Android Studio指定引用jnilibs 特定CPU架构的so库文件

    稍微大一些的项目都会用到第三方库,所以不可避免的会有针对不同手机cpu架构的.so库文件 'x86', 'x86_64', 'mips', 'mips64'  'armeabi' ,'armeabi- ...

  9. 计算机二进制表示、cpu架构(x86_64)、cpu频率、核心、主板

    计算机二进制表示 色彩二进制表示: 红色 255,0,0绿色 0,255,0蓝色 0,0,255 文字二进制表示:A 65a 97 cpu架构 cpu架构有精简指令集和复杂指令集两种精简指令集cpu有 ...

随机推荐

  1. 多线程异步加载图片async_pictures

    异步加载图片 目标:在表格中异步加载网络图片 目的: 模拟 SDWebImage 基本功能实现 理解 SDWebImage 的底层实现机制 SDWebImage 是非常著名的网络图片处理框架,目前国内 ...

  2. ANT编译build.xml

    一,体验ant就像每个语言都有HelloWorld一样,一个最简单的应用能让人感受一下Ant1,首先你要知道你要干什么,我现在想做的事情是:编写一些程序编译它们把它打包成jar包把他们放在应该放置的地 ...

  3. Git 设置别名[alias]

    工作中我经常设置一下别名... 别名就在[alias]后面,要删除别名,直接把对应的行删掉即可. 而当前用户的Git配置文件放在用户主目录下的一个隐藏文件.gitconfig中: $ cat .git ...

  4. iOS-CALayer

    iOS开发UI篇—CAlayer层的属性 一.position和anchorPoint 1.简单介绍 CALayer有2个非常重要的属性:position和anchorPoint @property ...

  5. javascript常用方法函数收集

    收集了一些比较常用的javascript函数. 1.字符串长度截取 function cutstr(str, len) { var temp, icount = 0, patrn = /[^\x00- ...

  6. [读行者][学习LinqExpression和Reflection(Emit)]阅读TypeBuilderSample之ExampleFromTheArticle

    前言 关于”读行者“ 俗语有云:"读万卷书,行万里路“.多读一些优秀代码,不仅可以锻炼我们读代码的能力(便于维护或相互交流),还可以吸取很多我们成长所需的知识点.多读,才能开阔我们的眼界,才 ...

  7. mini2440 linuxi2c驱动

    #include <linux/kernel.h> #include <linux/init.h> #include <linux/module.h> #inclu ...

  8. OC学习笔记之属性详解和易错点

    属性的概念在OC1.0中就存在,格式是定义实例变量,然后定义setter和getter方法,用点操作符操作属性 举例,类的接口部分 @interface Father : NSObject { NSI ...

  9. angularjs源码分析之:angularjs执行流程

    angularjs用了快一个月了,最难的不是代码本身,而是学会怎么用angular的思路思考问题.其中涉及到很多概念,比如:directive,controller,service,compile,l ...

  10. 提取html中的src 路径

    /// <summary> /// 替换body中的img src属性 附加上域名 /// </summary> /// <param name="str&qu ...