`ps`の「セッションリーダー」とは何ですか?

`ps`の「セッションリーダー」とは何ですか?

ps -dセッションリーダーを除くすべてのプロセスが選択されるセッションリーダーとは何ですか?

ベストアンサー1

Linuxでは、各プロセスには次のような複数のIDが関連付けられています。

  • プロセスID(PID)

    これはプロセスを識別する任意の数です。各プロセスには一意のIDがありますが、プロセスが終了し、親プロセスが終了ステータスを取得した後に、新しいプロセスで再利用できるようにプロセスIDが解放されます。

  • 親プロセスID(PPID)

    これは単に問題のプロセスを開始したプロセスのPIDです。親プロセスが子プロセスの前に終了すると、子プロセスのPPIDは他のプロセス(通常PID 1)に変更されます。

  • プロセスグループID(PGID)

    これはプロセスグループリーダーのPIDにすぎません。 PID == PGIDの場合、このプロセスはプロセスグループのリーダーです。

  • セッションID(SID)

    これはセッションリーダーのPIDにすぎません。 PID == SIDの場合、プロセスはセッションリーダーです。

セッションとプロセスグループは、単に複数の関連プロセスを1つの単位として処理する方法です。プロセスグループのすべてのメンバーは常に同じセッションに属しますが、セッションは複数のプロセスグループを持つことができます。

通常、シェルはセッションリーダーになり、そのシェルで実行される各パイプはプロセスグループになります。これは、シェルがシャットダウンしたときにシェルの子を簡単に殺すことができるようにするためです。 (望むより出口(3)血まみれの詳細を取得します。 )

リーダーではなく、セッションやプロセスグループのメンバーを説明する特別な用語はないと思います。

おすすめ記事