Author Topic: i386, i586, i686. . .  (Read 1274 times)

DJ

  • Member
  • **
  • Posts: 161
  • Kudos: 0
    • http://mypage.iu.edu/~dpjackso
i386, i586, i686. . .
« on: 30 November 2002, 20:38 »
sorry to ask such a newb question but what is the difference?

I see on some ftp sites . . .

i386/iso/*filename*
i586/iso/*filename*
/iso/*filename

What are the differences between them? Is it the computer stucture or simply a way to classify certain types of systems (by age maybe)

Dj

EDIT: the reason I ask is because I just installed Lycoris on my secondary over Mandrake and it worked fine with my monitor/vid card issues, but I would like to try ximian and it is not available for the Lycoris platform

[ November 30, 2002: Message edited by: Engineer ]

=)

Ice-9

  • Member
  • **
  • Posts: 322
  • Kudos: 0
    • http://users.pandora.be/Ice9
i386, i586, i686. . .
« Reply #1 on: 30 November 2002, 21:04 »
It refers to your cpu architecture.
I think i386 points to 386 and 486 cpu's, i586 to Pentium cpu's and i686 for PII and above.
I could be wrong about the last though, it might refer to PIII and above.

You should stick with the appropriate cpu architecture since it's quite important to determine which instructions your cpu can handle.
In any ways it's for optimization so on an x86 platform your alays safe by chosing i386.
He was sitting on a rock. He was barefoot. His feet were frosty with ice-nine .....

choasforages

  • VIP
  • Member
  • ***
  • Posts: 1,729
  • Kudos: 7
    • http://it died
i386, i586, i686. . .
« Reply #2 on: 30 November 2002, 21:45 »
and for that information
k6 class machines can only run i586 code, not i686
/*don't ask me it just is*/
x86: a hack on a hack of a hackway
alpha, hewlett packed it A-way
ppc: the fruity way
mips: the graphical way
sparc: the sunny way
4:20.....forget the DMCA for a while!!!

pkd_lives

  • Member
  • **
  • Posts: 554
  • Kudos: 0
i386, i586, i686. . .
« Reply #3 on: 30 November 2002, 21:53 »
It's just as Ice9 says. all for marketing reasons - research shows numbers scare people, but names make them feel safe, and incrementing the name with a version number convinces them that the product is getting better - so much for free thought.

i386 = 386
i486 = 486
i586 = Pentium 1
i686 = Pentium 2
i787 = Pentium 3
i886 = Pentium 4.

So as you can see, Linux is equivalent of XP and most distros still only run at Pentium2 architecture. However even in the windows world the only software I know that utilixes P4 is XP.

You cannot really use i586 software on i386. There may be functionality (processor commands for example) used that do not exist in the earlier version. In fact the commands are the real reason for upping a processor, speed is really a side benefit and a secondary concern for anyone really using their computer.

Choasforages - The K6 processor utilized the i586 command structure. Although it reached nice PII speeds it could not use the extra 30 or so instructions implimented in the PII.

[ November 30, 2002: Message edited by: Linux Frank ]

Tough - Adapt or die : Read The Fucking Manual.

Local Area Network in Australia: the LAN down under.


choasforages

  • VIP
  • Member
  • ***
  • Posts: 1,729
  • Kudos: 7
    • http://it died
i386, i586, i686. . .
« Reply #4 on: 30 November 2002, 22:01 »
errr, i though that the pentium 4 was i686 based with a few instructions. and i could push pentium4 optimized code out for linux if i really wanted to and owned a pentium4. i already compile all my code for k6-3. or i could get icc for free/*yes its on there website, but im not using intel proc on this box, only compatible*/

and for pentium III and Pentium IV
all they did was slow the latter down and add  YAIS  (yet another instruction set) they didn't change the  achitecutre like they did from traditional x86 to p6 /*somebody with more insight  then either of us correct this*/
x86: a hack on a hack of a hackway
alpha, hewlett packed it A-way
ppc: the fruity way
mips: the graphical way
sparc: the sunny way
4:20.....forget the DMCA for a while!!!

choasforages

  • VIP
  • Member
  • ***
  • Posts: 1,729
  • Kudos: 7
    • http://it died
i386, i586, i686. . .
« Reply #5 on: 30 November 2002, 22:03 »
it can't do sse, it can do mmx and 3dnow.
x86: a hack on a hack of a hackway
alpha, hewlett packed it A-way
ppc: the fruity way
mips: the graphical way
sparc: the sunny way
4:20.....forget the DMCA for a while!!!

DJ

  • Member
  • **
  • Posts: 161
  • Kudos: 0
    • http://mypage.iu.edu/~dpjackso
i386, i586, i686. . .
« Reply #6 on: 30 November 2002, 22:49 »
Now just trying to figure out what to do with these .rpm files, can't find any .iso files, Ok, so I'm new sue me  

Dj
=)

Ice-9

  • Member
  • **
  • Posts: 322
  • Kudos: 0
    • http://users.pandora.be/Ice9
i386, i586, i686. . .
« Reply #7 on: 30 November 2002, 23:02 »
What would you like to try from Ximian?
It's not like you can "install" Ximian.

They have some stuff like Red Carpet and an excellent mail client "Evolution", but what would like to install?

Edit : as for the rpm packages you can install them with # rpm -Uvh nameofpackage.rpm or
# rpm -ivh nameofpackage.rpm
where -Uvh updates files if there are any files to update and -ivh just installs files without checking for files to update.

[ November 30, 2002: Message edited by: Ice9 ]

He was sitting on a rock. He was barefoot. His feet were frosty with ice-nine .....

pkd_lives

  • Member
  • **
  • Posts: 554
  • Kudos: 0
i386, i586, i686. . .
« Reply #8 on: 30 November 2002, 23:10 »
the terms ix86 can be thought in terms of version numbers - simple as that. The next step is the next release number. So yes according to Intel there is a requirement for i886 compatabilty for running P4, a bug that hit some early linux distributions like RH 6.2 fairly and squarly on the arse. But you are right in a sense, there has not been a huge amount of change between 686 and the latest. It's more been about manufacturing design changes than architecture changes with regards actual processing.

Of course they drop and add features same as software - the next release is not always better in every way, and indeed can be a step backwards, it's just the release is much more formalised.

And yes 3Dnow was why I got the K6 myself. It is a wonderfully fast and stable processor compared to my intel and cyrix experiences. It's just now getting too old. But the x86 architecture is really controlled by Intel (not sure about patents etc., or whether x86 is a controlled format), as AMD are playing catch up. The K6 was AMD's big play. It worked as well. They proved they could outperform a P1, in fact they can outperform a PII, but because the PII had some new tech in it the outperformance was short-lived - however they managed to build on it and are now a full blown competitor against intel - about time.

As for getting right inside the architecture, I really can't say because I don't know that much.

[ November 30, 2002: Message edited by: Linux Frank ]

Tough - Adapt or die : Read The Fucking Manual.

Local Area Network in Australia: the LAN down under.


Calum

  • Global Moderator
  • Member
  • ***
  • Posts: 7,812
  • Kudos: 1000
    • Calum Carlyle's music
i386, i586, i686. . .
« Reply #9 on: 30 November 2002, 23:51 »
quote:
Originally posted by Linux Frank:
It's just as Ice9 says. all for marketing reasons - research shows numbers scare people, but names make them feel safe, and incrementing the name with a version number convinces them that the product is getting better - so much for free thought.]


that's the reason that slackware went from version 3.9 (i think) straight to 7. All the other linux distros were up to 6 or 7 (suse's first release was version 5.2 i think!), and despite the fact that slackware had the same kernel as the other distros, people kept asking them when they would 'upgrade to linux 6'.

sad.
the biggest, and most ridiculous one is the enormous jump of 92.89 version numbers from windows 3.11 to windows 95!    :D

[ November 30, 2002: Message edited by: Calum ]

visit these websites and make yourself happy forever:
It's my music! | My music on MySpace | Integrational Polytheism

lazygamer

  • Member
  • **
  • Posts: 1,146
  • Kudos: 0
i386, i586, i686. . .
« Reply #10 on: 1 December 2002, 05:20 »
Where does Celeron fit in though? 686 or 586? I think that whole "name over number thing" is gay. It makes you feel like a n00b rather then a 1337 d00d.

Why not call a P2 600: 686/600I? a K6 450: 586/450A?
So the A would stand for AMD, and if they released some new suped up architecture(sp) that was still 586, they could call it 586/450AB(B representing the second type of 586 architecture they offer). Woulden't that be cool and geeky?  

[ November 30, 2002: Message edited by: lazygamer ]

For every hot Lesbian you see in a porno video, there is a fat, butch-like, or just downright ugly lesbian beeyotch marching in a gay pride parade, or bitching about same sex marriages. -Lazygamer on homosexuality

voidmain

  • VIP
  • Member
  • ***
  • Posts: 5,605
  • Kudos: 184
    • http://voidmain.is-a-geek.net/
i386, i586, i686. . .
« Reply #11 on: 1 December 2002, 05:35 »
Here is an snippet from the "Processor type and features" section of the 2.5.50 kernel configuration. The order of the processors architecture selections goes as follows:

386
486
586/K5/5x86/6x86/6x86MX
Pentium-Classic
Pentium-MMX
Pentium-Pro/Celeron/Pentium-II
Pentium-III/Celeron(Coppermine)
Pentium-4
K6/K6-II/K6-III
Athlon/Duron/K7
Elan
Crusoe
Winchip-C6
Winchip-2
Winchip-2A/Winchip-3
CyrixIII/VIA-C3

And if you click on the the first one (386) here is the note associated with it:

Code: [Select]

I believe the i386/i586/i686/athlon/etc in RPM names are compiled using the same methodology. Look on this list, wherever your processor falls you should be able to run software compiled at the same level or lower.

For instance, you could run software included in a *.i386.rpm on any x86 platform but an i586 RPM would only be able to be run on Pentium or higher x86 architectures.

586 Starts with the line "586/K5/5x86/6x86/6x86MX"
686 Starts with the line "Pentium-Pro/Celeron/Pentium-II"

In fact I just made a FAQ entry if someone wants to add it to the FAQ. Here is a link to the page:
http://voidmain.kicks-ass.net/redhat/what_does_386_586_686_mean.html

[ November 30, 2002: Message edited by: void main ]

Someone please remove this account. Thanks...

beltorak0

  • Member
  • **
  • Posts: 223
  • Kudos: 0
    • http://www.angelfire.com/realm/beltorak
i386, i586, i686. . .
« Reply #12 on: 1 December 2002, 07:21 »
In the old dayz, the first real pc by intel was the 8086.  16 bit archetecture.  however, it was too pricy / complex / whatever, so they came out with the 8088.  down to 8 bits.  how's that for progress?

After that came breaking the 640Kb RAM barrier with 16 bit architecture -- the 80286, or 286 for short.  Some might remember the clunky all-in-one-monitor-and-cpu boxes called "ps/2".  anyway, it sucked.  It could only handle 1 MB directly, DOS took up a significant portion of that, but could be told to run above the 640K line (mostly) and thereby free up "real" memory.  It still had to have a residue (about 22K) in low mem, but the rest (about 40K i think) could be placed in high mem.  But the point is moot becuase there are several address spaces up there that are reserved for outdated hardware (even today), like A000-AFFF for a monochrome monitor, E000-EFFF for EGA, C000-CFFF for ROM programs and other necesities, etc.  Dos could be configured to use the monochrome space for ram since mono's were out of phase by then, but whatever.  It could also have more than 1 MB by a memory trick called paging -- but paging could only be done in 16K chunks.  And I think it was limited to 2MB of addressable RAM.  It might have been 16, i can't remember.

The real significant improvement in archetecture started with the 386 (80386).  It could address 4 GB of physical ram (using virtual ram to make up the difference), handle memory swapping pseudo-automatically, and even execute programs that resided above 1MB without requiring the code be swapped into a low mem spot to execute.  But in order to do that, a new concept came into being -- protected memory.  Memory now came in 4 flavors, called rings, that denoted access priveleges.  0 is the highest, generally where some kernel code resided, and the interrupt table, and various other spots needed by the bios.  applications resided in ring 3, the lowest.  for some reason, no one ever writes for rings 1 and 2.  anyway, processes can demote themselves to lower rings, but only those that run at boot time (during which the switch from real mode to virtual or protected mode happens) have ring 0 privs.  (my recollection might be a little off, but I think that that's right.)  no code in any ring can execute or look at code or data in a higher ring.  this is where the greatest number of windows GPF's come from.  an application tries to inspect code/data that the kernel is maintaining in ring 0.  The entire os doesn't run in ring 0, just parts of it; but that is an aside.  This is why syscalls are important.  An app has to ask the kernel to do things in ring 0 that it cannot do on it's own.  Another aside, windows 386 was brought into being by taking a mini-disassembler (like DEBUG, but only slightly more sophisticated), stepping through windows 286, placing it into protected mode, and removing the GPF's one -- by -- one.  That is why the win9x kernels, which swollowed all the code from windows 386 (later renamed windows 3.0), are so damn buggy.  it has nothing to do with supporting the DOS FS.  but anyway.

Then came the dreaded 486 (80486).  Great idea, poor implementation, but that's for later.  In this version of CPU's, intel decided to "pipeline" the instruction cycle.  Instead of the CPU taking one instruction, executing it, and using the results, each instruction enteres the execution pipeline.  There are three stages: fetch/pre-decode, branch-prediction, and decoding.  The instruction is then handed to the CPU.  This allowed up to four instructions to be placed in a queue to the CPU, greatly increasing code processing throughput (measured as the time it takes to load an execution and execute it).  And the branch prediction tried to guess which way a conditional would go, and tell the prefetch unit to grab the next expected codes and place them on the pipeline.  At worst, the BPU would incorrectly guess each and every time, and you would end up with a 386, since the wrong execution path would have to be dumped out of the pipeline.  The horrendous part?  Intel decided to go with a 16k buffering cache instead of the 4k used in the 386.  If the prefetch unit had to access data on a boundary, 32k of data would have to be loaded into the buffer.  If the reference that is in the pipeline was sufficiently modified at execution, that data would have to be dumped and another 32k loaded.  Remember memory back then was 60-70ns access time, not 4-8ns.  This is when optimising code became important.  A reference had to be spaced far enough away from anything that would modify it so that the prefetch would load the correct data.

Then Intel said "what if we can get two instructions in two pipelines side by side?"  Enter the U and V pipes for the 80586 architecture.  (note that I don't call it a 586...)  Caveat: the V pipe could only handle about 8 instructions, and they could only be executed side by side with about 20 instructions in the U pipe.  I think there were about 80 instructions in the 80586 instruction set at the time.  Very inefficient.  Another way of puttin git is that there were only 8 instructions for the V pipe that were compatible with 20 instructions in the U pipe.  But it was groundbreaking.  Furthermore, the pipelines were lengthened to 5 stages (prefetch, predecode, branch prediction, decode, decode) and allowed references that were in the prefetch/predecode stage to be modified by an instruction in one of the decode stages without causing the entire queue to be dumped.  There would be a small bubble in the pipe, but it's better than losing the entire pipe (although that was still possible).  Cyrix (remember them?) heard about the design and said "we can do this better", and they did.  Intel used to be the leader in chipmaking until this point -- now the clones were not satisfied with reverse-engineering finished products, but rather creating better implementations of Intels not-yet-released designs.  Cyrix also beet intel to the punch and patented/copyrote the "586" name first.  Hence the "pentium" name.  ( i think intel decided to say "pentium II" instead of "sextium" due to the potential for a bad phonetic joke).  Cyrix chips and boards were bug-prone and had a lot of hardware conflicts, so they did not last long.  but right behind them came AMD.  Back to archetecture:  the clone pipelines were "x" and "y", and "y" could handle the entire instruction set (minus 4 or 6 instructions), and all of them were compatable with all instructions in the "x" pipe (minus 4 or 6).  A pipeline dump would still happen if an instruction being executed in one pipe modified a reference in the other's decode stages.  But here ends the great strives forward in architecture.  The rest is mainly cosmetic.

Intel, in the 80686 line, fixed the oversights in the 80586, added a few instructions to allow the CPU to directly handle multimedia (MMX anyone?)(the pre P-II MMX was mainly experimental), and they moved the L2 cache off of the CPU die onto the motherboard.  yeah, huge strides forward.

80786 / 80886 were mainly PR-masturbation about clock speeds.  (OOOOH!!! I HAVE A 2GHz Email/Web Browser!!!!!!)  They might have put additional pipes in place, i stopped paying attention.

I might be off about x86 numbers, I think intel retarded the number but advanced the name somewhere around the P-II.

someone correct me if I am wrong...

-t.
from Attrition.Org
 
quote:
Like many times before, Microsoft is re-inventing the wheel and opting for something other than round.

-t.


DJ

  • Member
  • **
  • Posts: 161
  • Kudos: 0
    • http://mypage.iu.edu/~dpjackso
i386, i586, i686. . .
« Reply #13 on: 1 December 2002, 07:33 »
thanks for all the replies,

 
quote:
What would you like to try from Ximian?
It's not like you can "install" Ximian.


Sorry I should of specified, I want to try evolution the email client which I have heard rivals outlook in everything except holes in security  :D  but it didn't list lycoris as one of the distributions under the menu in the downloads section, does this mean its will not work with that distro?

Dj
=)