
私はLinuxに初めてアクセスし、Linuxオペレーティングシステムの構造の基本を理解しようとしています。
それでは、「lsmod」と「GNU Cライブラリ」(約2000個のサブルーチン)の出力にリストされている「linux-kernel-modules」は同じですか?
答え1
いいえ、LinuxカーネルモジュールはGNU Cライブラリと同じではありません。どこでこのようなアイデアを得たのかわかりません。
カーネルモジュールはLinuxカーネルの一部であり、要求に応じてロードできます。構成によっては数千のモジュールがありますが、一般的なインストールには数百個しか使用されませんが、使用されるモジュールはハードウェアやその他の要因によって異なります。
一方、GNU Cライブラリはユーザープログラム用のC関数の集まりであり、カーネルでは使用されません。
答え2
まったく異なる2つを混同しています...
Linuxカーネルモジュールは平信者たちはそれを何と呼びますか?ドライバー。グラフィックカード、ネットワークカード、サウンドカードなどを使用できます。未使用のドライバを無効にできますが、必要なドライバがないとシステムは起動しません。
カーネルモジュールは、コンピュータディレクトリ内のどこかに
.ko
拡張子を持つファイルとして見つけることができます。/lib/modules
GNU Cライブラリはよく知られたブランドシステムライブラリ(必要に応じてシステムDLL)。これはユーザープログラム(Cで書かれたUnixプログラムなど)として機能します。走るLinuxカーネルから。システムライブラリがない場合は、プログラムを実行するにはアセンブリ言語で書く必要があります。
GNU Cライブラリの主な要素は、コンピュータディレクトリのどこかに
libc-*.so
あるDLLというDLLとして見つけることができます。/lib/*-linux-gnu/
注:この回答は実際に質問を単純化しすぎました。