1

私が答えられることを望んでいたオペレーティングシステムの作成について、いくつかの非常に具体的な質問があります。

  1. GRUBをブートローダーとして使用する場合、最小限のCカーネルをロードするためにどのくらいのアセンブリコードを記述する必要がありますか?

  2. 私のカーネルはCで書かれます、それは私がC ++で書いたコマンドラインシェルをロードします、それはAPI呼び出しをしません標準ライブラリ呼び出しだけをします、そうするためにC ++標準ライブラリ全体を書き直す必要がありますか?

  3. ビデオ、キーボード、フロッピードライバをC ++で作成できますか?

  4. GCCとG++は16ビットのリアルモードコードを出力しますか?

  5. これをすべてWindowsでMingwを使用して作成できますか、それともLinuxで作成する必要がありますか?

  6. ビデオメモリに直接書き込むには、リアルモードにする必要がありますか?

誰かが私の質問に答えることができれば私は非常に感謝します

4

1 に答える 1

2

1:ブートプロセスを処理し、Cコードをロードするために必要なアセンブリは少量です。20〜30行以上にすべきではないと思います。

2-4:OSdevでC++を実際に使用したことはありませんが、どこかで実行するにはさらに作業が必要であることを読んだことを覚えていると思います。申し訳ありませんが、これ以上お役に立てることはありません。

5:MinGWを使用して「実行」できますが、私の経験からすると、ほとんどの場合、事態は複雑になります。Windows環境を実際に動作させることはできませんでしたが、あまり努力せずに諦めました。

編集:これはいくつかのサンプルアセンブリへのリンクです。これは私が今まで使用しなければならなかったすべてです: http ://www.jamesmolloy.co.uk/tutorial_html/2.-Genesis.html

そのようなことに興味があるなら、そのサイトの残りの部分もかなり良いチュートリアルです。

于 2011-09-17T17:19:03.130 に答える