从概念上说,CPU指令集架构和微架构完全是两种不同的概念,指令集其实是一种规范,意思就是Cpu的设计要通过指令集的规范而设计,而微架构就是在通过规范之后对指令集的实现。也许很多人还是不能够明白CPU指令机架构和微架构的意思,那么用更简单的方法来解释,意思就是老师教授学生怎么解答一元二次方程数学题,但是数学题题目有很多,那么老师就交给了学生解答些这些题目的方案,这个“解题方案”就是所谓的指令集,而学生“具体解答的题目”就是微架构。
在日常生活中我们经常使用到电脑,很多人都应该知道Amd和英特尔的处理器是非常有名的,其实这两款处理器都是采用的X86指令集设计的Cpu,不过不同的是他们的微架构并不一样。通过指令集和微架构的关系,我们就可以理解为,他们用同一个数学公式解答了两个不一样的数学题目,得出了两种不同的答案。
指令集和微架构的关系是相辅相成的,指令集的语言需要通过微架构才能去实现,而微架构的运行又需要通过指令集才能实行,虽然采用相同指令集的cpu微架构可能有所不同,但是在一定的条件下,它们也可以运行相同的程序。
而目前在市场中最常用的Cpu大概就是AMD和英特尔处理器,这是因为他们采用的x86指令集架构体系非常的强大,而目前掌握这项技术的也只有AMD和英特尔,不过,虽然两款处理器的都是采用的X86指令集架构设计的CPU,但是因为他们的微架构有所不同,所以他们的性能CPU性能表现也会有区别。
Instruction Set Architecture &Processor Architecture
中央处理器 (central processing unit,CPU)作为计算机系统的 运算 和 控制 核心,是信息处理、程序运行的最终执行单元。 [1]
CPU的分类还可以按照指令集的方式将其划分,常见的两种为 精简指令集计算机 (RISC) 和 复杂指令集计算机 (CISC) 。
目前主要分为两大类: IA和x86 ,在这两类下又分别划分有32位和64位。按照这样的分类,就出现了四种体系架构名称:IA-32,IA-64,X86-32,X86-64。
微架构也是SOA的一种,只是其component更小更多而已。Spring等框架中,常有依赖注入,Ioc等技术,通过配置文件,决定API调用,一个不是很恰当的比喻,把这些API分开,包装成Service,放在网络上,每个有自己的process,通过与语言无关的协议通讯,类似Rest之类的,这就成了微架构。
据说,好处是容易deploy,更灵活,解耦;坏处是网络限制性能,不易确定系统state等等。
个人感觉,微架构只是把复杂性推到了其他的地方,过分强调解耦,可能造成不必要的细化,导致系统更为复杂,难以维护,不是很看好这种思路。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)