Ich habe eine Maschine mit glibc i686 und x86_64 und ein sehr ärgerliches Problem mit glibc.
Ist es normal, dass zwei Bibliotheken mit demselben Namen auf einem Computer installiert sind? Wie kann ich wissen, welche Bibliothek ausgeführt wird?
Bis vor kurzem glaubte ich, dass x86_64 i686 war. Nun, ich muss mich irren, aber warum?
[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.
package-management
yum
glibc
cpu-architecture
MUY Belgien
quelle
quelle
uname -m
undcat /proc/cpuinfo
Antworten:
Technisch gesehen ist i686 ein 32-Bit-Befehlssatz (Teil der x86-Familie), während x86_64 ein 64-Bit-Befehlssatz ist (auch als amd64 bezeichnet).
Laut Sound haben Sie eine 64-Bit-Maschine, die aus Gründen der Abwärtskompatibilität über 32-Bit-Bibliotheken verfügt. Das sollte völlig in Ordnung sein.
quelle
Wenn Sie i686 in Wikipedia graben, werden Sie von Wikipedia darauf hingewiesen, dass die i686-Mikroarchitektur als x86-Erweiterung betrachtet wird.
Im Allgemeinen werden alle x86-Architekturen als ähnlich angesehen, und die x86_64-Architektur (oder möglicherweise amd64-Architektur) wird in einer anderen Mikroarchitekturgruppe berücksichtigt.
quelle
i686- Pakete sollen auf 686-kompatiblen Prozessoren ausgeführt werden, einschließlich aller Intel 32-Bit x86-Prozessoren bis einschließlich Pentium 4 usw. sowie Prozessoren von AMD ( AMD K6 ) und anderen Anbietern, die kompatible 32-Bit-Prozessoren herstellen. Bit-Chips.
Für mehr Informationen:
x86_64- Pakete sollen auf Prozessoren ausgeführt werden, die mit der AMD64 64-Bit-Plattform kompatibel sind, einschließlich AMD Athlon 64, AMD Opteron und verwandten AMD-Prozessorfamilien sowie Intel 64- basierten Prozessoren.
Diese 64-Bit-Prozessoren sind vollständig abwärtskompatibel zu ihren 32-Bit-Vorgängern. Wenn Sie also über einen AMD64- oder Intel 64-Prozessor verfügen, müssen Sie die 64-Bit-x86_64-Pakete oder die 32-Bit-i686-Pakete installieren. Um die bestmögliche Leistung Ihres Systems zu erzielen, können Sie die 64-Bit-x86_64-Distributionspakete verwenden.
Referenz :
quelle