16

配属されました

次の識別子 PID、PPID、SID、PGID、UID、EUID を出力する C プログラムを作成します。

割り当ては、次に尋ねました

各識別子を表すものは何ですか?

プログラムを完了しましたが、識別子の適切な説明が見つかりませんでした。

  • 彼らは本当に何を表していますか?
  • 特に、SID および PGID 識別子の目的は何ですか?
4

1 に答える 1

32

それらは次のとおりです

  • PID - プロセス ID
  • PPID - 親プロセス ID
  • SID - セッション ID
  • PGID - プロセス グループ ID
  • UID - ユーザーID
  • EUID - 有効なユーザー ID

この SO Postと最初の回答を見て、それらの目的の健全な説明を確認してください。

彼らが投稿した定義の推奨ページから
http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html

3.270 親プロセス ID

プロセスの親を識別する新しいプロセスの属性。プロセスの親プロセス ID は、作成者の存続期間中、その作成者のプロセス ID です。作成者の存続期間が終了すると、親プロセス ID は実装定義のシステム プロセスのプロセス ID になります。

3.343 セッション

ジョブ制御の目的で確立されたプロセス グループのコレクション。各プロセス グループは、セッションのメンバーです。プロセスは、そのプロセス グループがメンバーであるセッションのメンバーと見なされます。新しく作成されたプロセスは、その作成者のセッションに参加します。プロセスは、そのセッション メンバーシップを変更できます。setsid() を参照してください。同じセッションに複数のプロセス グループが存在する場合があります。

3.296 プロセスグループ

関連するプロセスのシグナリングを許可するプロセスのコレクション。システム内の各プロセスは、プロセス グループ ID によって識別されるプロセス グループのメンバーです。新しく作成されたプロセスは、その作成者のプロセス グループに参加します。

3.297 プロセス グループ ID

有効期間中のプロセス グループを表す一意の正の整数識別子。

3.142 有効なユーザー ID †</sup>

ファイル アクセス許可を含むさまざまな許可を決定する際に使用されるプロセスの属性。ユーザー ID も参照してください。


†</sup> EUID と EGID (Effect Group ID) は、代わりにファイルシステムの FSUID フィールドと FSGID フィールドをそれぞれ取る Linux では、ファイルシステムのパーミッションに使用されないことに注意してください。

RedHat 6.x docs のこのページには、これらが Linux でどのように動作するかについてかなり簡潔に説明されています: http://www.mit.edu/afs.new/athena/system/rhlinux/redhat-6.2-docs/HOWTOS/ other-formats/html/Secure-Programs-HOWTO-html/Secure-Programs-HOWTO-3.html

于 2017-01-06T03:36:37.843 に答える