Linuxカーネルのどの部分は必要ありませんか? [閉鎖]

Linuxカーネルのどの部分は必要ありませんか? [閉鎖]

LOCから答えを得たいです。

ほとんどのモジュール/ドライバ、仮想化の改善、Androidパッチなどがデフォルトでカーネルから除外されることがわかります。しかし、私の質問は他の人に参考資料になるために冗長で理論的な答えを求めることに近いです。

それでは、通常のユーザーには必要ないLinux機能は何ですか?より良い方法は、一般的なコンピュータユーザーがウェブサイトを閲覧し、事務作業などを行うことを想像してみましょう。派手な開発やハッキングは必要ありません。

この点では、カーネルのどの部分とそれに対応する量のコードをLinuxから削除できるかを知りたいと思います。

これにより、一般の人々は、Linuxがどれだけ「単一」であるかを知ることができます。

UPD: @MatthewRock 答えで言われた内容を理解し、健全なアドバイスです。このように理解すれば、私はカーネルのカスタマイズを擁護しません。基本カーネル部分の有用な状態の詳細です。私は自分で答える必要がなく、私が完璧な答えだと思うものの例を提供したいと思います。

以下は必要ありません。

  • STM32=XXXLOCのSPIコード

  • KVM サポート = YYYLOC

  • 「フホはヤンだ」タグ=ZZZLOC

答え1

簡単な答えは次のとおりです。ハードウェアと要件によって異なります。

ほとんどのディストリビューションはコンパイルされたカーネルを提供します。これらのカーネルはできるだけ多くのシステムで動作するように作られています。したがって、実際に必要とされない多くの項目が含まれています。

カーネルには多くのものが含まれています。特定のドライバをコンパイルしようとしています。残念ながらどんなドライバーなのかはお話できません。これはハードウェアによって異なります。残りはスキップできます。とにかく、使用しないドライバは必要ありません。

カーネルはいくつかのファイルシステムもサポートしています。特定のファイルシステムを使用しないことを知っている場合は、おそらくドライバをコンパイルしません。特定のファイルシステムを使用する必要がある場合は、いつでもカーネルを再コンパイルできます。

あなたが一般的なLinuxユーザーだとします。あなたは何をすべきですか?

私の提案は次のとおりですカーネルを変更せずに保持。一般に、コアは大丈夫​​で、周囲の調整で目立つものは何も得られません。経験がない場合は、問題が発生すると混乱する可能性がありますので、安全のためにそのままにしてください。

「ハッカー」や「プログラマー」の場合でも同様です。より良いプログラマになるか、プログラミングを容易にするためにカーネルを調整する必要はありません。結局のところ、プログラムは調整なしでカーネルで実行する必要があります(またはプログラムのポイントは何ですか?)。カーネルの構成は、主に趣味の生活者やそうする必要がある人(例えば、組み込みデバイスのカーネル)のためのものです。 Gentooクリエイターの新しいプロジェクトであるFuntooも、プリコンパイルされたカーネルを使用します。

しかし、カーネルを直接コンパイルすることは興味深い経験になるかもしれません。仕組みと「内部」とは何か(少し)理解できます。必要なものをオン/オフできます。 Linuxについて詳しく学んでください。

しかし、正直なところ必要ない場合は、デフォルトのカーネルを使用できます。もっと欲しいなら、いつでもプリコンパイルされた強化カーネルや他のカスタムカーネルを探してみてください。

関連情報