古い mem.exe コマンドを XP コマンド プロンプトに実行すると、興味深いことが起こることに気付きました。
ディレクトリ名 (および表示されるメモリ構造) の変更からわかるように、シェルは保護モードからリアル モードに切り替わります。これを実行しているのは Windows exe ローダーですか、それとも cmd.exe ですか? 保護モードに戻す方法はありますか?
答え1
mem.exe
互換性のために 16 ビット Windows から引き継がれた 16 ビット アプリケーションです。したがって、32 ビット Windows 内の 16 ビット VM 1で実行され、メモリをそのように表示します (16 ビット VM が含まれていないため、64 ビット Windows には存在しません)。
短いファイル名を表示するためにプロンプトがシフトすることは、cmd.exe
子 WoW プロセスの実行によってトリガーされる不整合の 1 つです。
しかし cmd.exe
32 ビットまたは 64 ビットのプロセスにはリアル モードが存在しないため、「リアル モード」では実行されません。
1 16 ビット Windows-on-Windows サブシステムは、x86/x64 プロセッサの 16 ビット実行モードの 1 つを使用して、VMWare (その他) が完全なマシンをホストするのと同様に、分離された環境を提供します。