4

Linux 2.6でプロテクトモードからリアルモードに移行するにはどうすればよいですか?

4

5 に答える 5

10

そうしない。

カーネルはリアルモードではまったく機能できず、BIOS呼び出しを(賢明に)行うこともできないため、とにかく何もできません。

DosEMUがv86モードを使用して「リアルモード」コードを実行する方法をご覧になるかもしれませんが、それだけです。

于 2009-05-06T14:48:28.063 に答える
2

ハードウェアでリアルモードが本当に必要な場合は、 FreeDOSを確認することもできます。

于 2009-05-06T16:55:49.660 に答える
2

カーネルは、ブート/スタートシーケンスの最初の段階でリアルモードからプロテクトモードに切り替わり、後戻りすることはありません。詳細については、ブートローダーのしくみを参照してください。

リアルモードを必要とするプログラムがある場合は、v86モードがあります。64ビットモードでこれをサポートするための作業が進行中です。

于 2009-05-06T22:13:16.480 に答える
1

ELKS Linuxポートはリアルモードを実行できますが、2.6にはほど遠いです。

于 2009-05-06T13:40:33.390 に答える
1

カーネルの一部として数行のコードを記述することで、プロテクトモードからリアルモードに切り替えることができます。

主なことは、cr0レジスタのPEビットを無効にした後、適切なGDT、LDT、IDTをロードする必要があることです。詳細については、このリンクをたどってくださいhttp://www.sudleyplace.com/pmtorm.html

于 2012-05-10T10:28:00.373 に答える