プロテクトモード
読み:プロテクトモード
外語:protected mode
80286
以降の
Intel x86プロセッサー
の動作モードの一つ。
目次
概要
特徴
仕様
メモリー機能
80286のプロテクトモード
i386以降(IA-32)のプロテクトモード
補足
MS-DOS
近代的なOS
概要
正式名称は「保護仮想アドレスモード」(Protected Virtual Address Mode)である。
80286以降では、プロテクトモードが本来の動作モードである。但し互換性のために
8086
互換の動作モードが存在し、それは
リアルモード
と呼ばれている。
特徴
仕様
プロテクトの名の通り、プロセッサーの動作に制限をかけることによって、不正な動作が行なわれたときに即座にそれを感知して
例外処理
に飛べるようになるモードである。
次のような機能を持つ。
プロセッサーの実行権限の管理
仮想記憶
とそれによる不正なメモリーアクセスの感知
80286
‐ 16
MiB
までの仮想メモリーをサポート
80386
以降(
IA-32
) ‐ 4
GiB
までの仮想メモリーをサポート
割り込み
、
例外
機能の強化
I/O
の管理強化
メモリー機能
プロテクトモードの機能のうち、特に仮想メモリーのサポートは重要である。
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でのプロテクトモードは、
EMS
、
XMS
、
DOSエクステンダー
を扱うときに利用される程度であった。
近代的なOS
MS-DOSではほとんど日の目を見なかったが、
マルチタスク
や仮想メモリーを積極的に利用する近代的な
オペレーティングシステム
(OS)ではプロテクトモードで動作させるのが普通である。
MS-DOSをベースに
GUI
操作とマルチウィンドウ・マルチタスク機能を持たせた
Microsoft Windows
、
ワークステーション
用のOSであった
UNIX
をパソコンに移植した
PC UNIX
(
FreeBSD
、
Linux
など)、純国産
リアルタイムオペレーティングシステム
である
BTRON
などは、使い方に程度の差はあるが主にプロテクトモード上で動作している。
再検索