Why does linux have an ISO for each processor architecture?

Asked

Viewed 636 times

10

Hello, I would like to understand why Linux has several ISO's for each type of CPU (AMD64, i386, etc.), because Windows does not need it, and how is compiled for each type of architecture.

If possible, pass links that have this more in depth. Thank you.

2 answers

13


I would like to understand why Linux has several ISO’s for each CPU type (amd64, i386, etc.) and why Windows does not need this?

Because the processor architecture influences the entire compilation of the kernel and the applications that accompany the Linux distribution. Any operating system is like this.

Each processor has its own set of instructions. Each set of instructions requires that the Assembly the operating system is mounted in a different way.

Windows doesn’t escape that. When installing, the installer detects the processor architecture before starting and installs the kernel most suitable for the processor in question.

And how do you compile that for every kind of architecture?

In the case of Linux, GCC by default compiles in 32 bits, but adding the flag -m64 will cause the compiler to perform a 64-bit build. GCC also supports cross-compiling (compiling for both 32-bit and 64-bit, but only at library level).

There is also the option to select other architectures. The list of architectures supported by GCC is here.

  • Windows has multiple Isos for different architectures.

  • 1

    The last time I used one of these was a Vista pro 7 update. Then I never saw it again. It’s a media only with several edits inside.

  • The binaries of various architectures used to fit in a single media. Today this is no longer possible on a DVD. In addition, formerly the portion of the x86-32 that needed to be shipped along with the x86-64 was much larger than the current one. Some Linux distributions (such as Fedora) will even remove support for the x86-32 architecture.

  • In fact, nowadays it is increasingly difficult to see "media", even those on DVD. My notebook, for example, not even DVD drive has more.

6

I’ll be very brief: AMD64 are for processors of 64 bits, and takes AMD’s name because she did it first; i386 are for the processors 32 bits, and takes the i Intel because she did it first. ;)

A bit of history:

  • Intel

x86 or 80x86 are generic names given to the processor family based on the Intel 8086, of Intel Corporation.

The architecture is called x86 because the first processors in this family were identified only by numbers ending with the "86" sequence: the 8086, the 80186, the 80286, the 80386 and the 80486.

Like nay if you can have a trademark on numbers, Intel and most of its competitors started using names that could be registered as trademarks, such as Pentium for generations of later processors, but the old nomenclature had already forged a term for the whole family: the x86.

  • Amd

AMD64, x64 or x86-64, are generic names given to the processor family based on 64 bit, used by the processors of AMD and of Intel.

The x86-64 was designed by Advanced Micro Devices (AMD), which renamed it AMD64. Intel was forced to follow suit, introducing modifications to the Pentium 4, and so launched the so-called Intel64, which is almost identical to AMD64.

https://pt.wikipedia.org/wiki/AMD64

https://pt.wikipedia.org/wiki/X86

More directly answering your question, we have the ISO 32bits and the ISO 64bits, for both Windows OS and Linux OS (see how windows also need "this"). When it is ISO AMD64 will install for processors 64bits both Intel and AMD (see explanation above), and when i386 will install 32bits - see the explanation above. :)

  • 3

    at last it was longer than the Gypsy... but at least it is well explained

Browser other questions tagged

You are not signed in. Login or sign up in order to post.