Apa perbedaan antara paket i686 dan x86_64?

34

Saya memiliki mesin dengan glibc i686 dan x86_64, dan masalah yang sangat mengganggu dengan glibc.

Apakah normal untuk memiliki dua perpustakaan dengan nama yang sama diinstal pada satu komputer? Bagaimana saya bisa tahu perpustakaan mana yang dijalankan?

Sampai baru-baru ini, saya percaya bahwa x86_64 adalah i686. Yah, saya pasti salah tetapi mengapa?

    [root@machin ~]# yum info glibc
    Loaded plugins: rhnplugin, security
    This system is not registered with RHN.
    RHN support will be disabled.
    Excluding Packages in global exclude list
    Finished
    Installed Packages
    Name       : glibc
    Arch       : i686
    Version    : 2.5
    Release    : 42
    Size       : 12 M
    Repo       : installed
    Summary    : The GNU libc libraries.
    License    : LGPL
    Description: The glibc package contains standard libraries which are used by
               : multiple programs on the system. In order to save disk space and
               : memory, as well as to make upgrading easier, common system code is
               : kept in one place and shared between programs. This particular package
               : contains the most important sets of shared libraries: the standard C
               : library and the standard math library. Without these two libraries, a
               : Linux system will not function.

    Name       : glibc
    Arch       : x86_64
    Version    : 2.5
    Release    : 42
    Size       : 11 M
    Repo       : installed
    Summary    : The GNU libc libraries.
    License    : LGPL
    Description: The glibc package contains standard libraries which are used by
               : multiple programs on the system. In order to save disk space and
               : memory, as well as to make upgrading easier, common system code is
               : kept in one place and shared between programs. This particular package
               : contains the most important sets of shared libraries: the standard C
               : library and the standard math library. Without these two libraries, a
               : Linux system will not function.

    [root@machin ~]# yum info glibc-common
    Loaded plugins: rhnplugin, security
    This system is not registered with RHN.
    RHN support will be disabled.
    Excluding Packages in global exclude list
    Finished
    Installed Packages
    Name       : glibc-common
    Arch       : x86_64
    Version    : 2.5
    Release    : 42
    Size       : 64 M
    Repo       : installed
    Summary    : Common binaries and locale data for glibc
    License    : LGPL
    Description: The glibc-common package includes common binaries for the GNU libc
               : libraries, as well as national language (locale) support.
MUY Belgia
sumber
2
Baca artikel WikiPedia ini di x86 dan artikel WikiPedia ini di x86_64 . Untuk mencari tahu apa yang Anda gunakan, gunakan uname -mdancat /proc/cpuinfo
eyoung100
1
Pada sistem RH5.9 x86_64, saya melihat glibc untuk i686 dan x86_64.
Raza

Jawaban:

25

Secara teknis, i686 sebenarnya adalah set instruksi 32-bit (bagian dari garis keluarga x86), sedangkan x86_64 adalah set instruksi 64-bit (juga disebut sebagai amd64).

Dari suara itu, Anda memiliki mesin 64-bit yang memiliki perpustakaan 32-bit untuk kompatibilitas. Itu harus benar-benar baik-baik saja.

Unix-Ninja
sumber
2

Jika Anda menggali i686 di Wikipedia, Wikipedia akan memberi tahu Anda petunjuk bahwa arsitektur mikro i686 dianggap sebagai ekstensi x86.

Secara umum semua arsitektur x86 dianggap serupa, dan arsitektur x86_64 (atau mungkin amd64) dianggap dalam kelompok arsitektur mikro lain.

41754
sumber
3
Tetapi jawaban cepat dan kotor adalah "karena i686 adalah submicroarchitecture 32bit x86, dan x86_64 (atau amd64) adalah microarchitecure 64 bit).
41754
2
Umm ... koreksi saya kalau saya salah di sini, tapi sepertinya komentar Anda seperti ... Unix-Ninja'ed.
TED
2

paket i686 dimaksudkan untuk dijalankan pada prosesor yang kompatibel dengan 686, yang mencakup semua prosesor Intel 32-bit x86 hingga dan termasuk Pentium 4 , dll. serta prosesor dari AMD ( AMD K6 ) dan vendor lain yang membuat kompatibel 32- keripik bit.

Untuk informasi lebih lanjut:

Paket x86_64 dimaksudkan untuk dijalankan pada prosesor yang kompatibel dengan platform AMD64 64-bit, termasuk AMD Athlon 64, AMD Opteron dan keluarga prosesor AMD terkait, dan prosesor berbasis Intel 64 .

Prosesor 64-bit ini sepenuhnya kompatibel ke belakang dengan pendahulunya 32-bit, jadi jika Anda memiliki prosesor AMD64 atau Intel 64, terserah Anda apakah akan menginstal paket x86_64 64-bit atau paket i686 32-bit. Untuk mendapatkan tingkat kinerja tertinggi dari sistem Anda, Anda mungkin ingin menggunakan paket distribusi x86_64 64-bit.

Referensi:

Finn
sumber