thus Martin Jungowski spake:
On Tue, 14 Dec 2010 13:29:29 -0500 Jeff Johnson wrote:
Sure there's an appealing symmetry with "x86" <-> "x86_64". The problem is that the names keep changing for marketing and technical reasons. Even "i686" and "i586" are mostly meaningless jargon. E.g. the linux kernel chose to start returning "i686" as a generic, not specific, and rely on precise details in /proc/cpuinfo years and years ago.
This could be because ever since the 1995 introduction of the i686 architecture with the Pentium Pro the core architecture hasn't changed significantly. AMD's K7 is fully i686 compatible, the K8 is a K7 core plus 64-bit features, and the K10 is an improved K8. At it's very core (in terms of instruction set, not in terms of actual silicon implementation) even the latest Phenom II X6 is still a fully i686 compatible K7. Intel tried a new architecture with the Pentium 4 but failed spectacularly as we all know, and returned to an improvied i686 processor with its Pentium M (aka Banias), Core and Core 2 series. The Core i7 is just like the Phenom II - a full i686 instruction set with 64- bit features.
The P6 design in the Pentium Pro was the next big leap after the i386 featured an MMU -- it was the first x86 CPU to feature out of order execution, and it was one of the first x86 CPUs to 'emulate' x86; for doing this, it used an internal RISC-based design (AFAIR the NexGen Nx586 was the first x86 CPU to do this, and it features speculative execution, as well). Mind the extreme 16bit performance problem the Pentium Pro had.
Martin
Timo