2

たとえば、「hello world」プログラムを (オペレーティング システムとして) 実行する非常に単純なブートローダーを作成した場合、処理されたテキストのグラフィカルな表現はどこにありますか。GPU がテキストをレンダリングするか、ハードウェアです。基本的なテキストの入力と出力は、BIOS またはプロセッサでハードコーディングされていますか? それとも、アセンブリ/プログラミング言語に統合されていますか?

4

2 に答える 2

3

PC の世界では、ビデオ サブシステムにキャラクター ジェネレーターがあります。ビデオ RAM から 8 ビットの文字値を取得し、文字定義マトリックス (ROM にある場合も、カスタム文字セット用に RAM 内のマトリックスを指す場合もあります) を使用して、表示を生成します。これは純粋なテキスト モードにのみ適用されます。グラフィカル モードは、ビデオ RAM レイアウトに関してはまったく別の動物です (また、GPU なども関与し始めます)。

于 2011-09-30T13:04:31.300 に答える
1

GPU は、プロセッサ、ディスクリート カード、またはマザーボードに搭載することもできます。基本的な I/O はフレームバッファを介して処理され、通常は BIOS によって 0xb8000 にマップされます。シンプルな I/O を取得するには、ASCII 文字をフレームバッファーに書き込むだけで、カードはそれらを画面に出力するだけです (あなたが言ったような基本的な OS で)。

これは、メモリ値を直接アドレス指定でき、ネイティブ コードにコンパイルできる任意の低レベル言語で実現できます。

画面に表示されるテキスト (このテキストなど) については、フォント、スタイル、およびその他の処理が必要なため、通常はソフトウェアの仕事です。これは通常、画面描画を許可するオペレーティング システムまたはドライバー自体によってエクスポートされた基本的な API を介して処理されます。

于 2011-09-30T02:34:30.137 に答える