“ i486”是指Intel 80486(因为80486以486结尾)。
但是为什么“ i586”是指奔腾1,为什么“ i686”是指奔腾Pro?
答案 0 :(得分:8)
Intel改用名称进行市场营销,因为您可以注册名称,但不能注册数字。 (显然是根据美国法院的决定。)
人们(尤其是Linux和GCC开发人员)发现,方便,紧凑和/或“聪明”可以为下两代微体系结构家族继续编号方案。
对此有一些根据:
Anubhava中使用的微体系结构家族的正式名称,这是英特尔的第五个x86微体系结构。第一代奔腾P5最早的产品是80500,更高版本的代码是80501和80502,不是 80586,但是数字5确实也出现在其中。
但是数字5确实出现在微体系结构代码中。如今,微架构的名称类似于Nehalem或Skylake,但在这一点上,我们有P5,然后是P54C(3.3伏版本),还有一些,然后是P55C(奔腾MMX 80502),其中包括其他体系结构改进和更长的处理流程(6 vs. 6)。 5个阶段)。
PPro和PII / PIII Pentium is P5。 P6微体系结构家族的后续成员包括Pentium-M / Core和Core 2(易称为“ Core”微体系结构)。 Nehalem / Westmere是P6家族的最后一代,而Sandybridge是一个新的独特家族(但相关)家族的开始。
但是,重点仍然是,英特尔确实在其手册和文档中正式使用了P6术语,其中包含数字6,因此用术语i686来描述支持--ip=0.0.0.0
等新指令的CPU是完全合理的,和/或执行乱序执行,或您要谈论的任何相关i686功能。
奔腾和486以后的CPU用 CPUID指令标识自己。 are based on the P6 microarchitecture告诉您CPU 系列,型号,步进。
(EAX = 0 / cmov
为您提供了一个供应商字符串:cpuid
for Intel。)
EAX=1 / cpuid
produces a result in EAX
其他一些供应商报告说他们的Pentium和PPro兼容CPU的Family = 4 5或6,例如AMD 5x86 / k5 / k6,NextGen,Centaur等。它们当然有自己的供应商字符串,但总的来说将“家庭”字段填入"GenuineIntel"
printf格式字符串或其他内容中并不是完全发疯的。