Cpu 作为一个具有特定功能的芯片,里面含有微指令集 如果你想让主机进行什么特异的运算,就需要参考Cpu是否有相关内置的微指令集 才可以由于Cpu的工作主要在于 管理和运算 ,因此Cpu内又可以分为两个主要的单元,分别是 逻辑单元和控制单元 。其中算数逻辑单元主要负责程序运算和逻辑判断,控制单元和协调各个组件和单元之间的工作。

  Cpu内部包含一些小指令集,我们所使用的软件都要经过Cpu内部的微指令集才能完成,这些指令集分为两种设计理念,分别是精简指令集(RISC)和复杂指令集(CISC)。下面我们来谈谈这两种不同Cpu种类的区别。

  精简指令集:(Reduced Instruction Set Computing)

    这种Cpu的设计中,微指令集较为精简,每个指令的执行时间很短,完成操作也很简单,指令的执行性能较差;但是若要做复杂的事情,就要由多个指令来完成。常见的RICS微指令集Cpu主要有Sun公司的SPARC系列,IBM的Power Architecture(包括power pc和ARM系列)

    应用方面SPARC主要应用于学术领域的大型工作站中,Power PC架构上的应用有Sony公司的Cell处理器,。至于手机,导航设备,路由器,交换机等用的都是ARM处理器,所以说Arm处理器也是世界上应用最广泛的处理器。

  复杂指令集:(Complex Instruction Set Computer)

    和RISC不同的,在CISI的微指令集合中,每个小指令可以执行一些低级的硬件操作,指令的条目多切复杂,所以每条指令话费的时间比较长,但是,每一条指令可以处理的工作却较为丰富。常见的CISI的Cpu主要有AMD,Imter,Via等x86架构CPU。

    由于AMD,Inter,VIa所开发出来的x86架构经常被用于个人计算机用于之上,因此个人计算机常被称为x86计算机。那么又为何成为x86架构呢?这是因为最早的那个Inter发展出来的CPU代号为8086,后来又以此架构又开发了80286,80386等。因此这种架构的Cpu被称为X86架构。

    在2003年之前有Inter所开发的X86架构Cpu由8位升级到16,32位后来AMD根据次架构升级新一代的Cpu为64位,为了区别两者的不同,因此64为的个人计算机Cpu有被称为 x86_64的架构。

    不同的x86操作系统之间有什么区别呢?除了其整体结构之外(如二级缓存每次运作可执行的指令数等),主要的不同在于指令集的不同,先进的指令集可以加速设备多媒体运行的速度,加强虚拟化性能。某些指令集可以增加能源效率,让Cpu的好点更低。由于现在电能成本的增加在买计算设备的时候优秀的能源效率也是值得考虑的。

      ,

centos走一波的更多相关文章

  1. 深入理解MVC C#+HtmlAgilityPack+Dapper走一波爬虫 StackExchange.Redis 二次封装 C# WPF 用MediaElement控件实现视频循环播放 net 异步与同步

    深入理解MVC   MVC无人不知,可很多程序员对MVC的概念的理解似乎有误,换言之他们一直在错用MVC,尽管即使如此软件也能被写出来,然而软件内部代码的组织方式却是不科学的,这会影响到软件的可维护性 ...

  2. C#+HtmlAgilityPack+Dapper走一波爬虫

    最近因为公司业务需要,又有机会撸winform了,这次的需求是因为公司有项目申报的这块业务,项目申报前期需要关注政府发布的相关动态信息,政府部门网站过多,人工需要一个一个网站去浏览和查阅,有时候还会遗 ...

  3. ES6走一波 数组的扩展

    Array flat 数组实例的扁平化方法(浏览器支持不佳) 建议使用 lodash的 flatten

  4. ES6走一波 字符串的扩展

    ES6字符串扩展: 处理大码点字符 字符的Unicode表示法 \uxxxx表示一个字符串,超出 \u0000 ~ \uffff范围,必须用两个双字节形式表示. ES6改进为 将码点放到大括号 可正确 ...

  5. ES6走一波 Iterator

    Iterator---> for ... of 循环 Generator函数原生具有 Iterator接口,所以可采用数组的形式解构赋值

  6. ES6走一波 变量结构赋值

    Destructuring  变量的解构赋值 是一种模式匹配 ES6我关注点之一是用途  能否举些好例子是检验学习到位的方法之一 交换变量值 函数返回多个值 函数入参为对象.数组,内部使用更简洁 意义 ...

  7. ES6走一波 module

    ES6模块设计思想:  尽量静态化,使得编译时就能确定模块的依赖关系,输入.输出的变量.可做静态优化. ES6模块不是对象,而是通过export命令显示指定输出的代码,再通过import命令输入 ex ...

  8. ES6走一波 Proxy/Reflect

    Proxy:像拦截器,对目标对象修改等进行拦截,是一种元编程(meta programming),即修改JS语言本身. //生成proxy实例,两个参数都是对象,targetObj是要拦截的目标对象, ...

  9. ES6走一波 Generator异步应用

    Generator 函数的异步应用 JS异步编程 callback Promise(解决回调地狱) 事件 发布订阅 generator Thunk函数  屁股函数 两次高阶调用的函数 第一次调用的入参 ...

随机推荐

  1. 判断IPv6地址合法性

    在 <netinet/in.h> 头文件下有下列这些宏用于判断IPv6地址合法性 返回0代表true,返回非零值代表ipv6地址为非指定类型的的地址(false) int IN6_IS_A ...

  2. jquery事件手冊

    方法 描写叙述 bind() 向匹配元素附加一个或很多其它事件处理器 blur() 触发.或将函数绑定到指定元素的 blur 事件 change() 触发.或将函数绑定到指定元素的 change 事件 ...

  3. selenium-python问题日记

    今天在学习selenium时遇到了两个问题,在这里记录一下: 使用unittest框架组织了测试用例后,拓展一下功能就成了我最想做的事情, 所以决定添加发邮件功能. 使用python自带的smtpli ...

  4. mysql的DUPLICATE KEY

    经常遇到这样的情景,向一个表里插入一条数据,如果已经存在就更新一下,用程序实现麻烦而且在并发的时候可能会有问题,这时用mysql的DUPLICATE KEY 很方便 用法如下: INSERT INTO ...

  5. 设计模式学习笔记——Prototype原型模式

    原型模型就是克隆. 还有深克隆.浅克隆,一切听上去都那么耳熟能详.

  6. Codeforces Round #426 (Div. 2) D. The Bakery 线段树优化DP

    D. The Bakery   Some time ago Slastyona the Sweetmaid decided to open her own bakery! She bought req ...

  7. Service-level agreement

    Service-level agreement - Wikipedia https://en.wikipedia.org/wiki/Service-level_agreement

  8. C/C++实现删除字符串的首尾空格

    StdStringTrimTest.cpp #include <iostream> int main() { std::string str(" 字符串 String " ...

  9. ReactMotion Demo8 分析

    链接 首先通过spring函数Motion的style参数, 传入Motion Component, 计算style的过程: const style = lastPressed === i & ...

  10. linux内核的三种主要调度策略

    linux内核的三种主要调度策略: 1,SCHED_OTHER 分时调度策略, 2,SCHED_FIFO实时调度策略,先到先服务 3,SCHED_RR实时调度策略,时间片轮转 实时进程将得到优先调用, ...