Results 21 to 23 of 23
Thread: i386 vs. i586 vs. i686
Enjoy an ad free experience by logging in. Not a member yet? Register.
Just for instance, my trusty 700 Mhz Celeron is a PIII ("Coppermine", with a mere 128 kb chache)
To find out what kind of celeron you have type this: (works on 2.4.x, and 2.6.4 [wfm] )
cat /proc/cpuinfo | grep model\ name model name : Celeron (Coppermine)
- Join Date
- Apr 2004
ok so does that mean that i can download updates in i686 format or do i need to keep upgrading packages that are i386? As in blah.blah.i686.rpm, or still use blah.blah.i386.rpm even though compiled specifying i686. Im using redhat 7.1 with a newly compiled 2.4.20-30 kernel. So far whenever i download a new package i get i386 still. So how does this work with general package updates and installations?
Yes, you can (in fact I think you should) use the foobar.i686.rpm updates. There is no problem in using the "old" i386, but it will be a little slower (you probably wont notice in most of the cases, unless it's some kind of CPU intensive app, like 3D software (even if you got a nice gfx card the CPU matters too)) then the i686 packages (due to a few different optimization issues, I'll spare you from the low level details ).
The reson for so much beeing compiled for the i386 is compabillity, because all (home use, "standard") CPUs are compatible against the i386 architecture, and it's easier to ship one file than 3,4 or 5 different when the gain isn't "justified" by the extra space consumption.
So to conclude, for most people that aren't sure of what CPU they have using the i386 is the best (as it will most likey work), but you should beable to use i686 apps if you have a processor which is a PII or better/newer. if you're unsure of what CPU you have, execute "cat /proc/cpuinfo | grep model\ name" in a terminal and post the output here and we'll help you with determinating if you can use i686 packages.
as a litte side note: in some cases people with a i386 CPU can use i686 compiled apps, that is cases when the i686 specific stuff isn't used, however if some i686 specific instruciotn is executed on a i386 the thing that will happen is that the app will "crash" / trigger an interrupt (iirc #INVALID_OPCODE, don't recall the interrupt number though). In other words, the computer won't blow up