読者です 読者をやめる 読者になる 読者になる

コケッココケッコ

コケコッコー

リアルモードとプロテクトモード

概要

CPUをリアルモードからプロテクトモードへ移すことは、ブートローダの役割となっている。 ここでは、参考文献を元に、リアルモードとプロテクトモードについて簡単に記す。

リアルモードとは

リアルモード(実モード、実アドレスモード)は、8086用に書かれたプログラムを実行させるためのものである。

PC/AT互換機は、電源投入後やリセット後はリアルモードで動作する。

特徴

  • アクセス保護機能がない
  • メモリの実アドレスを指定する
  • 16bit

メモリ空間

20bit(0x00000 ~ 0xFFFFF までの1MB)。これは、8086のアドレスバスが20本しかないため。

プロテクトモードとは

プロテクトモード(保護モード)とは、メモリ管理、タスク管理、保護機能などを利用するためのモード。

ほとんどのx86OSはプロテクトモードで動作する。

特徴

  • アドレス保護機能がある
  • プログラムは許可されたアドレス範囲外のメモリやI/Oにアクセスすると、CPUは割り込みを発生してOSに通知する。Linuxであれば、Segmentation Faultが発生する。
  • ページングとアドレス変換機能がある
  • 仮想メモリをサポート
  • 32bit

メモリ空間

32bit (0x00000000 ~ 0xFFFFFFFF までの4GB)

参考文献