1

Linuxカーネルについて勉強中です。sched.c を変更して、独自のスケジューリング ポリシーを指定しました。しかし、カスタム カーネルに再コンパイルするには 50 分以上かかります。手を加えていないソース コードをコンパイルする必要があるのはなぜですか? sched.c だけをコンパイルする方法はありますか?
次のコマンドを入力して、ディレクトリ内のカーネルを再コンパイルします/usr/src/linux-version

sudo make
sudo make modules-install
sudo make install

前もって感謝します。

4

1 に答える 1

3

カーネルの makefile は通常、本当に必要でない限り再構築しないという点で非常に巧妙です。

おそらくsched.hも変更していますか?そのファイルがいたるところに含まれていると予想されるため、再構築が行われる可能性があります。sched.c のみを変更する場合は、すべてを再構築する必要はありません。

PS: 高度な (GNU) make について学ぶことに興味がある場合は、これらの makefile を gems にしてください。それらには、いくつかの非常に優れたアイデアがあります。

于 2013-11-11T11:07:40.487 に答える