286プロテクトモード(PM)は、386が提供するものと根本的に異なります。286 PMをプロトタイプと考えてください。これには多くの欠点があり、ほとんど誰も使用していませんでした。また、386全体が完全に再設計されました。
フラットメモリモデルを使用せず、リアルモードのようなセグメントモデルを使用したため、一度に64kBを超えるブロックのメモリにアクセスするにはフープをジャンプする必要がありました。
当時利用可能なすべての(MS-DOS)プログラムとは完全に互換性がなかったため、PMにアクセスすると、使用していたプログラムを使用できなくなりました。
また、PCを再起動しない限り、保護モードを再び終了することはできなかったため、製造元はRAMにフラグを設定し、キーボードコントローラーに魔法の値を書き込むなどの創造的なソリューションを考え出しました。機械。BIOSが最初に行うことは、POSTルーチンを実行する代わりに元のプログラムにジャンプしてフラグを以前に設定し、元のプログラムが「exited」PMを実行し続けることを可能にすることです。
つまり、286 PMを使用すると、多くのトリックなしで通常のDOSプログラムを実行できなくなります。DOSプログラムしかなかった時代には、PMを使用する努力はまったく価値がありませんでした。
そのため、286 PMを使用しない場合よりも286 PMを使用する方が複雑になり、EMSとXMSを使用して追加のメモリにアクセスすることになりました。286のマザーボードの多くは、EMSのチップセットをサポートしているため、PMを必要とせずにすべての追加システムメモリを使用できます。
Intelはこれらの欠点を認識し、386でまったく新しいPMを製造しました。フラットメモリモデルにより、最大4GBのチャンクでメモリに簡単にアクセスできます。CPUは2、3の指示でPMに出入りできるので、面倒な再起動プロトコルは必要ありません。VM86は、ほとんどの場合、PMを終了する必要さえなく、PMにいる間にDOSプログラムを実行できることを意味します。
これらのすべての改善は、386 PMの機能が向上しただけでなく、互換性も大幅に向上したことを意味します。
つまり、286保護モードと386保護モードで共通しているのは名前だけです。これが、PMオペレーティングシステムが通常386以降である理由です。286 PMのサポートの追加は完全に独立した取り組みであり、まったく異なる386 PMと共有できるコードはほとんどないか、まったくありません。
対照的に、386 PMは最後の32ビットCPUまでほとんど同じように機能し、さらに64ビットCPUで32ビットソフトウェアを実行する場合でも機能します。