約 15 年前、私はモニター上のテキストを直接変更する悪いコードを書いて、自分自身を楽しませたり、CS の先生を悩ませたりしていました。これは、VGA を搭載した PC 互換機で 0xB8000 のビデオ メモリにアクセスすることで簡単に実行できます。
今日まで早送りして、物理メモリを読み取るためのアクセスを提供するデバッグ ポートを介して、昔ながらのトリックを試してみることにしました。嬉しいことに、最初に試したプラットフォームでも動作しました。その後、がっかりしましたが、他の多くのシステムでは機能しないことがわかりました。すべてで動作しないシステムには、UMA (共有メモリ) グラフィックスがあるようです。
そこで、BIOS ライター、低レベル OS 担当者、およびビデオ ドライバーの専門家の皆さんに質問です。共有グラフィックス メモリを備えた PC 互換システムで通常の 80x25 カラー テキストモードを使用している場合、リアル モードで、 0xb8000 - 0xB8FFF はすべて 0xFF であり、画面に何が表示されているかを示す代わりに、画面バッファーはどこに移動したのでしょうか?