Sự khác biệt giữa các gói i686 và x86_64 là gì?


34

Tôi có một máy có cả glibc i686 và x86_64, và một vấn đề rất khó chịu với glibc.

Có bình thường khi có hai thư viện cùng tên được cài đặt trên một máy tính không? Làm thế nào tôi có thể biết thư viện nào được thực thi?

Cho đến gần đây, tôi tin rằng x86_64 là i686. Chà, tôi phải nhầm nhưng tại sao?

    [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.

2
Đọc bài viết WikiPedia này trên x86bài viết WikiPedia này trên x86_64 . Để tìm hiểu những gì bạn sử dụng, sử dụng uname -mcat /proc/cpuinfo
eyoung100

1
Trên hệ thống RH5.9 x86_64, tôi thấy cả glibc cho i686 và x86_64.
Raza

Câu trả lời:


25

Về mặt kỹ thuật, i686 thực sự là một tập lệnh 32 bit (một phần của dòng họ x86), trong khi x86_64 là một tập lệnh 64 bit (còn được gọi là amd64).

Từ âm thanh của nó, bạn có một máy 64 bit có các thư viện 32 bit để tương thích ngược. Điều đó sẽ hoàn toàn tốt.


2

Nếu bạn đào i686 trong Wikipedia, Wikipedia sẽ cho bạn biết manh mối rằng vi kiến ​​trúc i686 được coi là một phần mở rộng x86.

Nhìn chung, tất cả các kiến ​​trúc x86 đều được coi là tương tự nhau và kiến ​​trúc x86_64 (hoặc có thể là amd64) được xem xét trong một nhóm kiến ​​trúc vi mô khác.


3
Nhưng câu trả lời nhanh và bẩn sẽ là "bởi vì i686 là một kiến ​​trúc con 32 bit x86 và x86_64 (hoặc amd64) là một vi điều khiển 64 bit).
41754

2
Umm ... sửa tôi nếu tôi sai ở đây, nhưng có vẻ như bình luận của bạn đã ... Unix-Ninja'ed.
TED


2

Các gói i686 dự định sẽ được thực thi trên các bộ xử lý tương thích 686, bao gồm tất cả các bộ xử lý Intel 32 bit x86 cho đến và bao gồm cả Pentium 4 , v.v. cũng như các bộ xử lý của AMD ( AMD K6 ) và các nhà cung cấp khác tương thích 32- chip bit.

Để biết thêm thông tin:

Các gói x86_64 dự định sẽ được thực thi trên các bộ xử lý tương thích với nền tảng 64-bit AMD64, bao gồm AMD Athlon 64, AMD Opteron và các bộ xử lý AMD có liên quan và bộ xử lý Intel 64 .

Các bộ xử lý 64 bit này tương thích hoàn toàn với các bộ tiền nhiệm 32 bit của chúng, vì vậy nếu bạn có bộ xử lý AMD64 hoặc Intel 64, bạn có nên cài đặt các gói x86_64 64 bit hay gói i686 32 bit hay không. Để có được mức hiệu suất cao nhất trong hệ thống của bạn, bạn có thể muốn sử dụng các gói phân phối x86_64 64 bit.

Tài liệu tham khảo :

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.