ハードウェアの背景
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2019/02/17 14:39 UTC 版)
x86プロセッサは80286以来セグメントレベルで実装された近い機能を持っていた。しかしこのメモリ管理モデルは特にフラットメモリモデルを採用する近年のソフトウェアで使うには粗末なものであり、セグメントではなくページ単位で実行を制御する新しい機構が求められていた。 このページレベルの機構は、ここ数年でサン・マイクロシステムズのSPARC、DECのAlpha、IBMのPowerPCといったx86プロセッサでない他のアーキテクチャのCPUで装備されてきた。インテルは2001年にIA-64アーキテクチャのItanium(コードネーム"Merced")プロセッサで同様の機能を装備したが、より一般的なx86プロセッサ(Pentium、Celeron、Xeonなど)には装備しなかった。x86プロセッサの機能としてはAMDがAMD64シリーズ(Athlon 64、Opteronなど)で実装し、「NXビット」と呼んでいる。「NXビット」という用語は現在、他のプロセッサの似た技術を指し示す場合にも使われるようになってきた。 AMDがx86プラットホームを強化するという決定の後、インテルもインテルのx86プラットフォームも強化する事を決定し、Prescottコアを持ちLGA775ソケットを実装したPentium 4プロセッサから近い機能を装備した。 NXビットはx86プロセッサのページテーブルエントリ内の63番目ビットを明確に参照する(最後のビット、64ビット整数で最初のビットが0で始まる場合)。このビットが0にセットされていればコードはそのページから実行される。1にセットされていれば、コードはそのページから実行することはできず、そのページの全てはデータとして扱われる。またこれらのページはx86本来のページテーブルフォーマットではなく、物理アドレス拡張ページテーブルフォーマットに準拠している必要がある。
※この「ハードウェアの背景」の解説は、「NXビット」の解説の一部です。
「ハードウェアの背景」を含む「NXビット」の記事については、「NXビット」の概要を参照ください。
- ハードウェアの背景のページへのリンク