19/09/15 14:18:57.98 .net
つーかプロテクテッドモードからリアルモードへの遷移は有名な話やろ?
Microsoftの凄さに震えるわw
URLリンク(builder.japan.zdnet.com)
1. まずCPUの制限でプロテクテッドモードからリアルモードへは切り替えられない(Windowsの制限ではない)
> Windows 2.0と80286
> その後、特定の命令を実行することで仮想記憶が利用可能なモード
>(メモリ保護機能がついているため「プロテクトモード」と呼ばれる)に移行できるのだが、
>プロテクトモードからリアルモードに戻る方法は存在しなかった。
2. それをMicrosoftはとんでもない発想で実現してしまった
> もし、リアルモードに戻れなければ、Windows 2.0が起動したあとはMS-DOSコマンドが実行できなくなってしまうだろう。
>
> Microsoftは実に巧妙な方法でこの問題を解決した。
>
> リアルモードに移行したい場合はCPUをリセットするのである。もちろん単にリセットしたのでは
> Windowsは強制終了され、BIOSの初期化ルーチンが動いてしまう。
>
> そこでWindowsはリセット時に実行するプログラムの実行番地をあらかじめ書き換えておく。
> そして必要なデータを退避させた上でリアルモードに移行するようにした。Windowsに戻るときはプロテクトモードに移行すればよい。
>
> Windows 2.0の「DOS窓」は1つしか立ち上げることができない。それは、実際にリアルモードに移行しているためである。