web-dev-qa-db-ja.com

i686とx86_64の違いは何ですか?

私はAMD Turionを持っていますが、Arch Linuxをインストールするときにどのバージョンを選ぶべきかわかりません。

108
Claudiu T.

i686は32ビット版で、x86_64は64ビット版のOSです。

64ビット版は、特に同じプロセスで大量のRAMを使用する必要がある大規模データベースのようなワークロードでは、メモリーの拡張性が向上します。 32ビットマシン上で(重要な)データベースサーバーを実行することを検討しないでください。

しかし、他のほとんどのものでは32ビット版は問題ありません。 32ビットコードはメモリの消費量が少ないため、他の用途にも使用できます。 OSが使用できるメモリの制限は変わらず、プロセスごとのメモリだけです。

だからそれは本当にあなたがそれを使いたいものに依存します。大規模サーバー用のソフトウェアを開発する場合、または大規模サーバーを実行する場合は、64ビットを使用してください。それ以外の場合は32を使用してください。

64
MarkR

短い答え:

i686 = 32-bit Intel x86 Arch 
x86_64 = 64-bit Intel x86 Arch
120
Brad

ix86は、プロセッサの生成によって設定されたプロセッサ命令の指示である。たとえば、Intel Pentium、Intel Core2Duo、AMD K6などです。あなたが2000年以降に作られたプロセッサを持っているならば、ix86は何年も前からありました、それはおそらく少なくともi686命令セットを持っています。他の指標が存在しないことは、これが32ビットバージョンになることを示唆しています。

x86_64は64ビットレジスタとアドレス空間の使用を示しています。 64ビットプロセッサおよびがあり、64ビットバージョンのオペレーティングシステムを使用する場合は、これを選択してください。

選択はあなた次第です。すべてのAMD Turionプロセッサは64ビットをサポートしていると思います。あなたはArch Linuxの64ビット版と32ビット版のどちらが欲しいのかを決める必要があります。

30
Zusukar

macemonetaが説明しています

基本的に、異なるカーネル指定は、コンパイラが最適化するように指示された命令セットを識別します。 i686 CPUはi586とi386の命令を実行することができるので、あなたが見たように、i686はi386カーネルを実行することができます。ただし、i686用に特別にコンパイルされたものほど最適には実行されない可能性があります。

これらはあなたが通常遭遇する指定です:

x86_64プロセッサ

  • AMDのAthlon 64、Athlon 64-FX、およびOpteron
  • Intel EMT64プロセッサ - Nocona Xeon、PrescottコアのE0リビジョンを使用するPentium 4(AKA Pentium 4、モデルF)

i686プロセッサ*すべてのIntel 32-bit Pentium(Pentium 1およびPentium MMXを除く)*すべてのAMD 32-bit Athlons

i586プロセッサ

  • すべての32ビットAMD K
  • ペンティアム1
  • Pentium MMX

i386プロセッサ

  • Intel 80386互換CPU用の一般的な「最小公倍数」の指定(上記のすべてを含みますが、それら以降のCPUの拡張命令を利用することはありません)。
0
Jonathan