architecture covers a lot more than just the
processor. There is a lot of other hardware components that are crucial to an OS kernel. The first example that comes to my mind is the
interrupt controller, which is separate from the
processor, but depending on actual model may be put inside the same chip as the
This entire collection of hardware components, is called the architecture. If you include some core software components as well, you have what is commonly called a
Also the term
architecture is a bit more abstract than
processor, you'll sometimes
architecture referring to the design and
processor referring to the physical piece of hardware.
x86 is a family of processors. In that family
i386 was the first to have paging and 32 bit support. Lots of software has been written requiring those, so often you'll see software with that processor as their minimum requirement. For standard PCs, the
i386 was obsolete decades ago, but it lived longer on some embedded systems.
By the time
i686 name was coined, there were enough different processors in the family, that this term doesn't refer to a specific processor. But there is a set of important features, that must be present in order for the
i686 term to apply.
i686 was state of the art about a decade ago. Today some systems have dropped support for processors without all the features covered by the
AMD64 is the name of a 64 bit architecture designed by AMD to succeed
x86. At the time AMD64 managed to be more successful than the 64 bit architecture marketed by Intel. This was due to AMD64 CPUs being cheaper, backward compatible, and consuming less power. Eventually Intel realized that they had to start making AMD compatible CPUs to remain competitive. They would however not market them as such, which is a major reason why some synonyms for
AMD64 has come into existence.
x86 covers all the 8, 16, and 32 bit CPUs in the family, and depending on who you ask also the 64 bit CPUs.
i7 are sub-families of CPUs manufactured by Intel.