您的位置 首页 > 数码极客

【x86是多少位】名词解释,什么是:x86、x86-64、i386、i686

权秀语:

安装Linux发型版本等软件时经常遇到x86、x86_64、i386、i686等名词,到底是什么意思?这篇文章做简单的名词解释。

不同的CPU架构,其软件不能通用

x86

又称为x86架构,或者x86指令集,是美国Intel公司为其第一块16位CPU(i8086)专门开发的。英特尔Intel早期CPU的名称都是用数字代号表示,并以“86”作为结尾,包括Intel 8086、80186、80286、80386以及80486,因此其架构被称为“x86”。

AMD/VIA等CPU也采用了x86的架构(指令集)。

其他芯片架构,例如手机芯片的ARM、龙芯的MIPS、神威太湖之光超级计算机CPU所采用的 Alpha架构。

CPU指令集,我们可以理解为和CPU沟通的语言,通过与CPU约定好(所设计)的语言(指令集),和CPU进行沟通,让其工作。

例如,因特尔和AMD的CPU能识别名叫x86和x86_64的语言。龙芯则只能听懂MIPS指令。所以,CPU架构不同、指令集不同者其软件就不能通用。


x86_64

即x86架构的64位版本。

其可以兼容x86(32位)版本的软件(指令集),但是x86不能运行x86_64版本的软件。

即所谓的向下兼容。

因为x86_64是在x86之后发明的,为了保持之前的软件能使用,所以对其架构和指令的设计是向下兼容的,让其能兼容32位版本。


686是pentiumpro及以后的通用arch,而i386是所有x86的通用arch,i386包括而i686没有包括的就是386、486、586(pentium)、pentium-mmx

现在应该没有人还在用586及以前的cpu,甚至是pentiumpro。而rpm都是为i386打的包,运行效率会低很多。

i386

Intel 80386,是英特尔(Intel)公司的一款x86系列CPU,最初发布于1985年10月17日。而目前i386通常被用来作为对Intel(英特尔)32位微处理器的统称。其采用的是x86架构的32位版本指令集。

i686

在i386之后,由因特尔发布的,Pentium Pro以及此后的Intel 32位架构 CPU。其指令集是对i386指令集的一个优化,使其速度更快。

i386与i686的向下兼容性关系大概如下:

i386:

i386:

i486:

winchip-c6: MMX 3dNOW!

winchip2: MMX 3dNOW!

i586(pentium):

pentium-mmx: MMX

i686:

pentiumpro:

pentium2: MMX

pentium3(m): MMX SSE

pentium-m: MMX SSE SSE2

pentium4(m): MMX SSE SSE2

prescott: MMX SSE SSE2 SSE3

nocona: MMX SSE SSE2 SSE3 (64bit)

c3: MMX 3dNOW!

c3-2: MMX SSE

k6: MMX

k6-2,k6-3: MMX 3dNow!

althon,althon-tbird: MMX 3dNow! SSE(prefetch only)

athlon-4, athlon-xp, athlon-mp: MMX 3dNOW! 3dNOW(enhanced) SSE(full)

k8, opteron, athlon64, athlon-fx: MMX 3dNOW! 3dNOW(enhanced) SSE SSE2 (64bit)


可以看出,i686囊括了现在正在使用的所有x86,所以若看到安装包,让你选择CPU的ARCH(架构)的时候,所有选i386的地方,都可以改为i686,这是没有问题的,反而能在指令调度上优化,填满流水线,使程序运行的更快。

但i686和i386一样,都是32位架构CPU。而我们如今的电脑,基本上都是x86_64架构的CPU。

关于作者: admin

无忧经验小编鲁达,内容侵删请Email至wohenlihai#qq.com(#改为@)

热门推荐