2012-02-10 35 views
8

私はブートローダを書いているので、NASMを学んでいます。これまでのところ、私には世界のブートローダがあります。私はcプログラムをリンクする方法を知りたいし、ブートローダにメモリにロードさせて、エントリポイントの実行を開始させたい。私はNASMのn00bですので、NASMコードが必要です。ご協力いただきありがとうございます。Cカーネルをロードするためのブートローダーの作成方法は?

EDIT:基本的に私はcプログラムをリンクする方法を知る必要があり、私はそれがエントリーポイント機能であるtsratにNASMコードを必要とします。私が知っておくべきことは何ですか?

+0

は、あなたがこれまで何を試してみましたが、チュートリアルを持っていますか?どのような問題がありましたか? –

+0

それをリンクして読み込む方法がわからないだけです。 Googleは手伝っていませんでした。 – user701329

答えて

6

this tutorialはC++用ですが、これは全く同じ手順です(このチュートリアルでは、C++固有の部分をリストしています。これはスタティックctors & dtorsです)。あなたはこの分野での問題を抱えている、これまでとき

は、osdev.orgは、一般的に答えたり

+0

ありがとうございました。 – user701329

2

は、カーネルのブートに関する落とし穴のトンがあります。ここでは

状態で始める必要があります良いリソースhttp://linuxgazette.net/issue77/krishnakumar.html

です。

+0

これは、ブートローダをフロッピーにコピーするためのcプログラムです。カーネルを起動するにはブートローダが必要です。私はブートローダーをコピーするためにddを使いました。 – user701329

+0

フェア十分:)私はあなたが答えを –

+0

の上に持っていると思うのですが、実際にそれを読んだら、ブートローダーアセンブリを持っています。 –