私はglibc i686とx86_64の両方を備えたコンピュータを持っていますが、非常に迷惑なglibcの問題があります。
1台のコンピュータに同じ名前の2つのライブラリをインストールするのは正常ですか?どのライブラリが実行されているのか、どうすればわかりますか?
最近まで、私はx86_64がi686だと思いました。わかりました、私が間違っていることは間違いありません。しかし、なぜ?
[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.
答え1
技術的には、i686は実際には32ビット命令セット(x86ファミリの一部)ですが、x86_64は64ビット命令セット(amd64とも呼ばれます)です。
表面的には、以前のバージョンとの互換性のために32ビットライブラリを含む64ビットシステムがあります。それは完全に大丈夫でしょう。
答え2
i686パッケージは、すべてのIntel 32ビットx86プロセッサを含む686互換プロセッサで動作するように設計されています。ペンティアム4などとAMDプロセッサ(AMD K6)および32ビット互換チップを製造するその他のベンダー。
より多くの情報を知りたい場合:
x86_64ソフトウェアパッケージは、AMD Athlon 64、AMD Opteron、および関連するAMDプロセッサファミリを含むAMD64 64ビットプラットフォームと互換性のあるプロセッサで動作するように設計されています。インテル64ビットプロセッサベース。
これらの64ビットプロセッサは以前の32ビットプロセッサと完全に互換性がないため、AMD64またはIntel 64プロセッサを使用している場合は、64ビットx86_64パッケージをインストールするのか、32ビットi686パッケージをインストールするのかによって異なります。システムのパフォーマンスを最大化するには、64ビットx86_64ディストリビューションを使用できます。
引用:
答え3
Wikipediaでi686を探すと、Wikipediaはi686マイクロアーキテクチャがx86拡張と見なされるという手がかりを提供します。
通常、すべてのx86アーキテクチャは類似していると見なされ、x86_64(またはamd64)アーキテクチャは他のマイクロアーキテクチャグループに属すると見なされます。
答え4
あなたの質問に答えるために、x86_64はi686と同じではありませんが、x86_64はi686機能を「含む」とします。
i686は、32ビットアーキテクチャに基づくCPU設計を表します。https://en.wikipedia.org/wiki/32-bit_computing)
x86_64は、64ビットアーキテクチャに基づくCPU設計を表します。https://en.wikipedia.org/wiki/64-bit_computing)
デフォルトでは、i686はx86_64名のx86部分を表すx86_64の32ビットコンポーネントです。 x86_64は、「以前のバージョンとの互換性」のために32ビット機能を「含む」64ビットCPUアーキテクチャです。 (望むよりhttps://en.wikipedia.org/wiki/X86-64)
インテルCPUの歴史を振り返ると、i686のような名前の由来を簡単に追跡することができる。
ほとんどの「パーソナルコンピュータ」(PC)では、現在のCPUの全身CPUは、最初のIntel CPU 4004で始まりました。 1970年代にはさまざまなモデルがあり、その後には8086、8088、80186、80286、80386、80486、80586(別名Pentium)などがありました(参照:https://en.wikipedia.org/wiki/List_of_Intel_microprocessors)
これは、IntelがCPUに割り当てる名前です。 x86のxは1、2、3などを表します。
i686が何であるか、どこから来たのかを知るための最良の方法は、Wikipediaで次の項目を検索することです。
i286、80286 i386 にリダイレクト、80386 i486 にリダイレクト、80486 i586 にリダイレクト、P5/Pentium にリダイレクト、Intel は現在 ix86 参照の使用を中止しています (理由はここを参照:https://en.wikipedia.org/wiki/Pentium)i686、P6 / Pentium Pro(シリーズの最後の主要な32ビットCPU設計、Pentium Mなどを無視する)i786およびIntel Itanium CPU / P7をリンクとして提供するその他のリンク(64ビットIntel CPUシリーズ初)