处理器架构
处理器架构
CPU架构是CPU厂商给属于同一系列的CPU产品定的一个规范,主要目的是为了区分不同类型CPU的重要标示。市面上的CPU分类主要分有两大阵营,一个是intel、AMD为首的复杂指令集(CISC
)CPU,另一个是以IBM、ARM为首的精简指令集(RISC
)CPU。两个不同品牌的CPU,其产品的架构也不相同,例如,Intel、AMD的CPU是X86
架构的,而IBM公司的CPU是PowerPC
架构,ARM公司是ARM
架构。
以Docker-compose
为例,各种CPU架构的软件版本如下:
1 查看
- window
运行:msinfo32
x64
就是x86
的64位版本,或者称为x86_64
;
linux
1 | root@VM-24-12-ubuntu:/home/ubuntu# lscpu |
或者:
1 | root@VM-24-12-ubuntu:/home/ubuntu# uname -m |
或者:
1 | root@VM-24-12-ubuntu:/home/ubuntu# dpkg --print-architecture |
这里的amd64
和x86_64
是一样的。
2 历史和对应关系
ARMv8
=ARM64
=AArch64
:对应64位ARM架构,常见于移动设备和嵌入式系统;ARMv7
=armv7l
=ARM
:对应32位ARM架构,常见于较旧的移动设备和嵌入式系统x86_64
=x64
=amd64
:对应64位x86架构,常见于个人电脑和服务器;x86_32
=x86
:对应32位x86架构,常见于较旧的个人电脑;
2.1 AMD
超威半导体(Advanced Micro Devices
),是除了英特尔以外最大的x86架构微处理供应商,也是除了英伟达以外仅有的独立图形处理供应商。
2.2 x86
泛指一系列由英特尔公司开发的处理器的架构,最早为1978年面世的“Intel 8086”CPU。早期的处理器均是以此格式来命名,如Intel 8086,80186,80286,80386,80486,这些架构被统称为x86
。由于数字不能被注册成为商标,因此公司每当有新的处理器使用,均会采用可注册的名称,如Pentium
。
在这个过程中,AMD作为Intel的竞争对手,也开始生产兼容x86指令集的处理器。特别是在386和486时代,AMD作为Intel的第二源供应商,为x86架构的发展做出了贡献。
进入90年代后,随着计算需求的增长,Intel和AMD都意识到32位架构的局限性,开始着手开发64位扩展。1999年,AMD率先发布了x86_64
指令集,作为x86架构的64位扩展。x86_64保持了与现有32位x86代码的兼容性,同时提供了更大的寻址空间和更多的寄存器,使得应用程序可以利用更多的内存。
随着x86_64的成功,AMD将其重命名为AMD64
,以强调自己的贡献和品牌。虽然Intel后来也采用了x86_64标准(称为Intel 64
),但AMD64这个名字已经深入人心。时至今日,x86_64/AMD64已经成为了服务器、桌面电脑和笔记本电脑的主流架构,而IA-64则主要局限于某些特定的服务器领域。
2.3 ARM
英文为Advanced RISC Machine
(RISC
:精简指令集),也是一个架构,非常适用于移动通信这种低成本,高性能,低耗电的领域。