kernel.orgからダウンロードしてデスクトップに配置し、ターミナルを開いてLinuxカーネルをコンパイルしました。 linux-3.2.13フォルダに変更してmr proper
。
次に、それを使用してmake menuconfig
.configファイルを設定します。完了して保存して入力make
し、端末でファイルのコンパイルを開始しました。 3時間コンパイルをしてから私が何か間違っているのではないかという気がします。
私の質問は次のとおりです
- 私は何が間違っていましたか?
- そうでない場合は、次に何をすべきですか?
- 出力は何ですか(例:.bin、.elf)?
- 私の究極の目標は、ディスクに入れて別のコンピュータに置いて実行できるオペレーティングシステムを作成することです。いいえ異なるカーネルを使用するUbuntuオペレーティングシステム)。
ベストアンサー1
私は何が間違っていましたか?
のようには見えません。最新のカーネルをコンパイルするのはリソース集約的です。 CPU が最新の状態ではなく、RAM が多くない場合は、次の操作を行う必要があります。非常に長い。
実際に必要なモジュール/機能のみを選択し、一部のRAMを搭載したマルチコア/スレッドコンピュータがある場合は、この-jX
オプションを使用しmake
てビルドを並列に実行できます。例えば
make -j4
ほとんどのビルドは4つのコアを使用します。
出力はどうなりますか?
圧縮カーネルイメージになります。 ELFファイルでもなく、一般的な意味の実行ファイルでもありません。プラットフォームのブートローダで処理するのに適した形式です。
次は何をすべきですか?
実行する操作によって異なります...(参照ここGrubを使用すると仮定し、モジュールとカーネルイメージのインストールに関する簡単なHOWTOを参照してください。クイック検索で利用可能な他のものがたくさんあり、実際に新しいカーネルで主流のディストリビューションを実行する予定の場合は、現在のディストリビューションのドキュメントを確認する方が良いでしょう。いくつかの機能要件があり、以下があります。考慮すべき初期化特性があります。 )
[私の目標は、独自のオペレーティングシステムを作成することです。]
まだそうするには遠かったようです。オペレーティングシステムの構築は非常に複雑な作業であり、カーネルの構築は非常に単純な部分の1つです。
行くことをお勧めします最初からLinuxそして現在、安定した「本」をお読みください。また注意してくださいリリース時計をクリックして、「ソースベース」展開カテゴリを検索します。その中には興味があるかもしれません。