| Just thought I'd add a bit to this for those that want a more in-depth clarification of Intel CPU naming. This may be a bit much, but that's simply because Intel CPU naming is complex and hard to get a grasp of.
First of all, Linux and many other operating systems refers to different Intel CPU generations as i386, i486, i586 and i686. Strictly speaking, i386 refers to the 80386 processor family, i486 refers to the 80486 processor family, i586 refers to Intel Pentium or Pentium MMX processors, and i686 refers to all Pentium Pro and later processors.
However, since all Intel CPUs are backward compatible with all previous Intel CPUs (yes, apart from the socket and memory interface, the latest AMD Athlon64 or Intel Pentium4 processor could run the same programs that the first IBM PC could run, although the reverse obviously isn't true), the i386 can also be used to refer to i386 and later processors. Since most operating systems today only deal with 80386 CPUs and later (since the earlier ones don't support virtual memory and stuff), they therefore often use i386 to refer to the Intel architecture as a whole, since the i386 term includes all Intel CPUs that they can run on.
Intel stopped at i686 since the Pentium Pro's architecture was so flexible that they didn't need to change it fundamentally after that. To check, from within Linux, which i?86 you have, check the contents of the file /proc/cpuinfo. If it says "cpu family: 6", you have an i686. Similar for 3, 4 and 5.
Frequently, the name IA32 is also used. It stands for "the 32-bit Intel Architecture", and it refers to all 32-bit Intel CPUs, that is to say every 80386 CPU or later. In other words, it is the term that really should be used instead of "i386" to refer to all CPUs that are compatible with the 80386 CPU. 32-bit is to separate it from the earlier 16-bit CPUs, not from the newer 64-bit CPUs.
The name IA64 does not refer to the newer 64-bit Athlon64 and EM64T processors. IA64 is Intel's Itanium architecture, which is a completely different thing. While IA64 processors have an IA32 compatibility module, noone uses IA64 at home. There are some servers that use IA64, but it's not very common even in the server market.
The 64-bit architecture that AMD pioneered and Intel followed, i.e. the architecture used in the Athlon64s and Intel's EM64T CPUs, is referred to by many names. The most common ones are AMD64, x86-64, x86_64 or x64.
The term x86 does strictly refer to all Intel-compatible processors since the 8086, but it's much more commonly used in the same sense as IA32 or i386, i.e. to refer to all processors compatible with the 80386.
Trivia time:
1. While Intel's backward compatibility seems ambitious, it's nothing compared to that of IBM's commitment. Even the latest iSeries/zSeries POWER servers from IBM are still binary compatible with the original IBM System/360 mainframe that was released back in the 1960s. This, from what I know, is accomplished with the clever use of pluggable microcode.
2. Did you know that it was Intel that designed the first microprocessor (i.e. a processor on a single chip) ever? That's right: the 4-bit Intel 4004. Relased in late 1971, its maximum clock speed was a staggering 740 kHz. |