原文连接:https://zhuanlan.zhihu.com/p/21266987
arm、x86和CPU
首先大家要清楚所谓的arm架构和x86架构都是针对服务器的CPU芯片来说的不管是数据中心服务器还是移动设备。CPU主要由运算器、控制器、寄存器三部分组成,从字面意思看运算器就是起着运算的作用,控制器就是负责发出CPU每条指令所需要的信息,寄存器就是保存运算或者指令的一些临时文件,这样可以保证更高的速度。CPU的主要作用是处理指令、执行操作、控制时间、处理数据,没有cpu那么服务器就是一堆无用器件的组装,cpu才是灵魂。
想要了解arm和x86架构,首先要了解这两种架构使用的指令集,复杂指令集CISC(x86)和精简指令集RISC(arm),从CPU发明到现在,有非常多种架构,从我们熟悉的X86,ARM,到不太熟悉的MIPS,IA64,它们之间的差距都非常大。但是如果从最基本的逻辑角度来分类的话,它们可以被分为两大类,即所谓的“复杂指令集”与“精简指令集”系统,也就是经常看到的“CISC”与“RISC”。 Intel和ARM处理器的第一个区别是,前者使用复杂指令集(CISC),而后者使用精简指令集(RISC)。属于这两种类中的各种架构之间最大的区别,在于它们的设计者考虑问题方式的不同。
举个不恰当的例子,比如说我们要让一个人从一个城市到达另一个城市,我们可以和他说最后要到某某地方,至于你怎么去,是坐飞机还是坐火车还是开车我不管,最后你只要按照约定到达就好,这就要求这个人必须懂得如果坐车,如果最飞机等,这就类比与复杂指令集。如果说我要求你先打车到机场,然后坐飞机,下飞机后再做公交到达目的地,将每一个指令都明确告诉你,这就类比与精简指令集。