Linux/Unixのi686とは?意味とアーキテクチャの違いを解説
i686とは
i686とは、広義には、1995年以降のPentium ProやPentium Mクラスのプロセッサに代表される、IntelのP6マイクロアーキテクチャを採用したプロセッサ向けに最適化されたカーネルを指します。i686向けのLinuxディストリビューションは、それ以前のほとんどの実装にも対応しており、たとえばi686マシンではi386ベースのディストリビューションも通常問題なく動作します。
i686規格は32ビットOSを実行します。なお、i686マシン専用のディストリビューションイメージは、2004年以降ますます入手しにくくなっています。
Intelのマイクロアーキテクチャの変遷
Intelのコンシューマー向けプロセッサは、1978年にリリースされた8086チップ以来、「*86」という命名規則を受け継いできました。その後の主な系譜は以下の通りです。
- 1983年:16ビットのi286
- 1985年:32ビットのi386
- 1989年:32ビットのi486
- 1993年:i586(初代Pentium)
- 1995年:i686(Pentium Pro)
- 2000年:i786(Pentium 4/NetBurst)
2003年以降は、64ビットOSをサポートするx64シリーズがコンシューマー市場で主流となりました。マイクロアーキテクチャのクラス名はx64以降発展しておらず、Intelの現在の命名方式はプロセッサの世代に重点を置いています。現在のデスクトップ向けPCでは、Intel Coreシリーズがx86_64 Linuxカーネルを使用しています。
その他のアーキテクチャ
i686以外にも、以下のようなプロセッサ固有の識別子を目にすることがあります。
- x86_64:Intelの64ビットアーキテクチャに対応
- amd64:AMDの64ビットアーキテクチャに対応
- arm64:64ビットARMチップに対応
i686アプリはどんなときに使うべき?
パッケージマネージャーが自分のカーネルに合った正しいパッケージを自動的に選んでくれるため、普段はあまり意識する必要はありません。原則として、i386アーキテクチャ向けにコンパイルされたカーネルを含むディストリビューションイメージは常にインストール可能です。パフォーマンスは32ビットになりますが、Intelプロセッサであれば概ね問題なく動作します。一方、64ビットIntelプロセッサを搭載した最新のPCを使っているなら、x86_64イメージを選ぶ方が理にかなっています。
Pentium ProからPentium 3、あるいはPentium Mを搭載した古いマシンを使用している場合は、i686イメージが入手できるのであれば選ぶ価値があります。i686カーネルは、基本のi386カーネルではアクセスできない、Intelがプロセッサに組み込んだ追加機能を活用できます。
もしi686規格向けに事前コンパイルされたディストリビューションイメージが見つからない場合でも、ソースから独自にカーネルをコンパイルすることは常に可能です。
よくある質問(FAQ)
i686-PAEとは何ですか?
PAEは「Physical Address Extension(物理アドレス拡張)」の略です。i686-PAEアーキテクチャでは、OSが1プロセスあたり4GBを超えるRAMにアクセスできます。i686自体は32ビットですが、PAEにより最大36ビット相当のアドレッシングが可能になり、最大64GBのRAMを扱えるようになります。
i686とx86_64の違いは何ですか?
Linuxをインストールする際、i686とx86_64のどちらかを選択するよう求められることがあります。一般的に、i686は32ビット版、x86_64は64ビット版のOSです。メモリを大量に消費する処理には64ビット版が有利ですが、ほとんどの用途では32ビット版でも十分実用になります。
-
Linuxの/dev/nullとは?仕組みと実践的な活用方法を徹底解説
/dev/nullとは何か技術的に言えば、「/dev/null」は仮想デバイスファイルです。プログラムから見ると、これは実際のファイルとまったく同じように扱われます。ユーティリティはこの種のソースに対してデータの入出力を要求でき、オペレーティングシステムがそれに応答します。ただし、ディスクから読み込む代わりに、OS側でデータを動的に生成している点が特徴です。こうしたファイルの代表例が「/dev/zero」です。一方、「/dev/null」の場合はデバイスファイルへの書き込みが中心になります。「/dev/null」に書き込んだデータはすべて破棄され、どこにも残りません。まるでデータを虚空に投げ捨
-
LinuxのAppImageとは?仕組みやSnap・Flatpakとの違いを徹底解説
Linuxディストリビューションで新しいソフトウェアを導入する際は、可能な限りパッケージマネージャーを使うのが基本です。そうすることでシステムがクリーンに保たれ、すべてのファイルが管理対象となって後から簡単に削除できるほか、ディストリビューションのアップグレード時のトラブルも回避しやすくなります。しかし、必要なソフトウェアがリポジトリに存在しなかったり、収録されているバージョンが古すぎたりすることもあります。そんなときは代替手段が必要になりますが、サードパーティ製の「.deb」や「.rpm」ファイルのダウンロードはあくまで最終手段にとどめておきましょう。 AppImageとは何か? Win