Hi everybody,
I've tried to install CentOS 5.5 i386 on an AMD Geode LX 800 processor.
That processor, being of the much more recent i586 family, is fully i386-
compatible. However, my attempt was brutally shattered when I had to
discover that CentOS takes a rather open and surprising attempt at
defining x86 compatibility: while claiming to be i386-compatible CentOS 5
requires an i686 processor and does not support the fully i386 but not
the least i686 compatible i586 architecture.
This is more of a general issue. i386 does not generally refer to
"whatever x86-compatible processor is the most recent" but a very well
defined and standardized architecture. Specifically, i386 refers to
Intels 80386 processor and its 32-bit x86 architecture (which is why x86
are i386 are often used interchangeably when x86 should instead be
referring to the 8086 architecture). Code that claims to be i386
compatible has to run on any given microprocessor that claims to be i386
compatible. It's as simple as that: if it doesn't run on i386 processors
then it's not i386 compatible. That's industry standard and thus
universally valid. If one would claim i386 compatibility but require a
x86_64 compatible processor, which of course would be capable of
executing standard i386 code, it'd be the exact same issue. It'd be more
radical but at its core not different from CentOS's unmet claim of i386
copmpatibility.
I guess my question is thus quite simple: why does CentOS 5 claim to be
i386 when it's not even remotely i386 compatible? And shouldn't the name
reflect code and/or processor family compatibility and affiliation?
And in a closely related question of more personal interest: what exactly
is it that makes CentOS require an i686 processor?
Thanks,
Martin
--
Rieke Computersysteme GmbH
Hellerholz 5
D-82061 Neuried
Email: martin[at]rhm[dot]de