プロテクトモード
読み:プロテクトモード
外語:protected mode

 80286以降のIntel x86プロセッサーの動作モードの一つ。
目次

概要
 正式名称は「保護仮想アドレスモード」(Protected Virtual Address Mode)である。
 80286以降では、プロテクトモードが本来の動作モードである。但し互換性のために8086互換の動作モードが存在し、それはリアルモードと呼ばれている。

特徴

仕様
 プロテクトの名の通り、プロセッサーの動作に制限をかけることによって、不正な動作が行なわれたときに即座にそれを感知して例外処理に飛べるようになるモードである。
 次のような機能を持つ。

メモリー機能
 プロテクトモードの機能のうち、特に仮想メモリーのサポートは重要である。
 x86では、プロテクトモードでないと1MiB以上のメモリーに全くアクセスすることができない。そのため、1MiB以降の物理メモリー領域の通称は「プロテクトメモリー」または「プロテクトモードメモリー」である。

80286のプロテクトモード
 80286が組み込み向けのプロセッサーとして作られたことから、80286のプロテクトモードはパソコン向けとして利用するには機能不足であった。
 そのため、80286がPC/ATに搭載された時、その機能を利用しようとするプログラマーは数多くの難題に悩まされることになる。詳細は80286の項目を参照のこと。
 このプロテクトモードの数々の悪評価から、80286は「Brain Damaged」などとも呼ばれるようになった。

i386以降(IA-32)のプロテクトモード
 80286のプロテクトモードが全く役に立たなかったことから、i386以降では大幅な見直しがされた。
 懸案だった仮想メモリーの機能はページング方式が正式に採用され、これによりついに「セグメント:オフセット」による1Mバイトの壁を突破することができた。

補足

MS-DOS
 機能が大幅に強化されたプロテクトモードは、それゆえに従来の8086と互換性がまったくないものとなった。
 そのため、当時主流のOSであるMS-DOSで動く8086用ソフトウェアは8086互換モードであるリアルモードで動かすことになり、本来の動作モードであるはずのプロテクトモードの方が「特殊な動作モード」として扱われることとなった。
 MS-DOSでのプロテクトモードは、EMSXMSDOSエクステンダーを扱うときに利用される程度であった。

近代的なOS
 MS-DOSではほとんど日の目を見なかったが、マルチタスクや仮想メモリーを積極的に利用する近代的なオペレーティングシステム(OS)ではプロテクトモードで動作させるのが普通である。
 MS-DOSをベースにGUI操作とマルチウィンドウ・マルチタスク機能を持たせたMicrosoft Windowsワークステーション用のOSであったUNIXをパソコンに移植したPC UNIX(FreeBSDLinuxなど)、純国産リアルタイムオペレーティングシステムであるBTRONなどは、使い方に程度の差はあるが主にプロテクトモード上で動作している。

再検索