SUSv4から:
pid が負で -1 ではない場合、sig は、プロセス グループ ID が pid の絶対値に等しく、プロセスがシグナルを送信する権限を持っているすべてのプロセス (システム プロセスの不特定のセットを除く) に送信されます。 .
私が理解しているように、いつでも同じ PID を持つ 2 つ以上のプロセスは存在できません。仕様ですべてのプロセスが指定されているのはなぜですか?
ありがとうございました。
仕様は、指定されたグループ内のすべてのプロセスに対して述べています。グループごとに複数のプロセスが存在する場合があります。否定id
はグループを識別します。
プロセス グループ ID はプロセス ID とは異なります。
PIDがわかっていると仮定すると、PGIDは
すべてのプロセスは、プロセス グループ IDで識別される一意のプロセス グループのメンバーです。(プロセスが作成されると、プロセスはその親のプロセス グループのメンバーになります。) 慣例により、プロセス グループのプロセス グループ ID は、プロセス グループ リーダーと呼ばれるプロセス グループの最初のメンバーのプロセス ID と等しくなります。プロセスは、システム コール、または同等の を使用して、そのプロセス グループの ID を見つけます。を使用してプロセス p を見つけます。
getpgrp()
getpgid(0)
getpgid(p)