各カーネルプロセスの目的を理解する方法は?

各カーネルプロセスの目的を理解する方法は?

(関連:プロセスの周りの括弧はどういう意味ですか?)

私が探しているものが何であるかをよりよく理解したいと思います。迅速な理解のために、実際のカーネルソースコードを掘り下げる必要はありません。

たとえば、kacpid初期検索では結果がほとんど出ていませんでした。結局私はそれがカーネルACPIデーモンであることを知って読みました。ACPIのウィキペディアページプロセスが何であるか全体的に明確になりました。

私が欲しいのはシリーズです。シンプルkacpid照会を通じて、次の情報を取得できるように定義されています。

カーチッド:カーネル ACPI デーモンを表します。 ACPI(高度な構成および電源インターフェース)は、省電力、電源オフ、休止状態など、さまざまな「状態」処理とCPU省電力に関するガイドラインに関する標準セットです。

今すぐ検索しようとしましたが、kblockdすべてのGoogleの結果に人々がメモリ不足の問題があることがわかりました。このプロセスが存在する理由を実際に理解していません。

ただ「いったい何がkblockd起きているのか?」と聞くこともできるだろうが、興味はあるが:

Linuxに関連する膨大な量のオンラインおよびオフライン文書(マンページ、情報ページ、POSIX仕様など)を考えると、標準的なソリューションはありますか?一般的な質問さまざまなカーネルプロセスについて学ぶ意味は、彼らは何をしていますか?その標準的なソリューションは何ですか?

ベストアンサー1

Linuxカーネルスレッド用の単一のドキュメントストアはありません。 Linux カーネルの一部の基本文書は次の場所にあります。Documentationディレクトリにはありますが、カーネルスレッドの特定のセクションはありません(一部のスレッドは参加する機能を伝えるドキュメントに記載されています)。そうでなければ、(aの言い訳)文書は、アクセシビリティが低下する順序で次のものを含みます。LWN 記事、ソースコードとLKMLファイル。 Linuxカーネル文書の一般的な哲学は、Cコードを流暢に読むことができず、電子メールディスカッションを掘り下げるのに時間を費やす準備ができていない場合は、カーネルが何をしているのかを知る価値がないということです。

名前でスレッドに関する情報を見つける最も簡単な方法は次のとおりです。カーネルソースコードから名前を検索する。例えば、kblockd組み込みblk-core.cジョブキューです。。一部のLKML検索では、そのソースを見つけることができます。kblockd.patch。非同期要求(ジョブキューの使用)、特にブロックデバイス(ディスクなど)に対する要求を処理します。

おすすめ記事