My first PC was a 386DX-40. As I remember, the 486 had four processor instructions that the 386 did not have. These four (IIRC) were combinations of 386 instructions, so what had taken 2 instructions on a 386 now only required one (and may be faster with just one).
Intel's 386 had 275,000 transistors, AMD's had 280K. I've heard you could push AMD's 40 MHz chip up to 80 MHz without damage, but don't quote me on that.
And please don't ever use one of those 486 SXLC or 486 DXLC chips, unless you know what you are doing. They do NOT have all the CPU registers that a true 486 has -- so if your program wishes to use all the registers of a 486 to store stuff, the program will crash!
So to answer your question, running a 386 program on a 486 (or higher) may mean the program uses more instructions to get the job done because it doesn't issue one of those four "combined" instructions, or any instructions that the Pentium, AMD K5, K6, or later chips know how to carry out.
Also "i386" can be used to mean "Intel / AMD Pentium-class instructions" to differentiate the files from Linux for Apple PowerPC (PPC). I suspect that Mandrake (or others) may have used "i386" this way (around Mandrake 8.0 or 8.2).
Hope this helps.
Last edited by saturndude; 05-29-2006 at 07:34 PM.