x86アーキテクチャ (x86 architecture)
【エックス・ハチロク・アーキテクチャ】
1978年に発表されたIntel社の8086と、その後継のプロセッサで採用されている命令セットアーキテクチャの総称。
x86シリーズプロセッサでは、その進化に合わせて、命令セットアーキテクチャが何度か大きく機能拡張されているが、下位互換性はずっと維持されている。そのため、例えば最初の8086のために書かれたプログラムは、現在のx86シリーズの最新のプロセッサでもそのまま実行することができる。これらのプロセッサで採用されている命令セットアーキテクチャをx86アーキテクチャといい、現在では、Intel社以外からもこのx86アーキテクチャをサポートした互換プロセッサが数多く発表、販売されている。
x86アーキテクチャの原点は1978年に発表された8086にある。これは、同社の8bitマイクロプロセッサ8080や、Zilog社のZ80などの影響を大きく受けたプロセッサであり、命令アーキテクチャ的には、あまり直交性の高くないレジスタセットと命令セット(命令とそのオペランドとして使われるレジスタなどを自由に組み合わせることができず、制約の多いアーキテクチャ。命令によっては、オペランドに使えるレジスタと使えないレジスタがある)と、セグメント方式のメモリアーキテクチャに特徴があった。
80286では、保護モードの概念が取り入れられた。これに伴い、従来の8086のモードを「リアルモード」と呼ぶようになった。また、完全に独立して保護される(オンデマンドの)セグメント方式のメモリ管理機能が導入された(8086では、メモリの保護機能がなく、しかもオーバーラップしていたので、他のセグメントの内容を破壊したり、アクセスしたりすることができた)。
80386では、新たに32bitモードが導入され、32bitのレジスタや32bit演算命令などが用意された。この結果プログラムからは、32bit(4Gbytes)のメモリ空間にフラットにアクセスできるようになり、システム全体の性能や、プログラミングの生産性が著しく向上した。この32bitモード以降のx86アーキテクチャを称して、特に、「IA-32アーキテクチャ」という。さらに80386では、もうひとつ重要なモードとして、仮想8086モードも導入されている。これは、リアルモードのプログラムを複数同時に、保護された状態で稼働させることができるモードである。また、ページング方式の仮想記憶サポートも行われている。
486やPentium、Pentium Pro、Pentium II、Pentium III以降では、特にx86アーキテクチャ的にはそう大きく進化していないが、MMXやStreaming SIMD Extensionの導入により、マルチメディア演算能力の強化が行われている。メモリ管理能力は、Pentium Pro以降では、36bit物理アドレスバス(64Gbytesの物理メモリサポート)、4Mbytesのラージページをサポートした仮想ページング機能(従来のページサイズは4Kbytesのみ)などが主な拡張点である。
Copyright (C) 2000-2007 Digital Advantage Corp.