2011-07-16 14 views
2

私は本当に今固執しています...純粋なマシンコードにCとアセンブリをコンパイルしますか?

vmlinuzバイナリファイル、MBR、BOOTMGRイメージなどのブータブルファイルは、すべて純粋なバイナリ/マシンコードで書かれています。しかし、それらはCとアセンブリからコンパイルされています。つまり、Linuxのカーネルソースは、Cソースで構成されている1と0で構成されていません。どうすれば私のアセンブリとCプログラムをコンパイルして、一般的なx86(私の場合はx86-32)のマイクロプロセッサ範囲のマシンコードにコンパイルして、これらのファイルから起動することができます。

答えて

7

このような種類のリソースには、OSDevという素晴らしいリソースがあります。

Bare bonesページで特に見て:それはアセンブリで記述されたミニマリストの「カーネル」を作成、構築し、実行中のプロセスを順を追って説明してC.

も構築する方法についてBaby stepsページを見てブートセクタ。

+0

ありがとうございます – user825962

関連する問題