JM プロジェクトは、主に Linux 関連のマニュアルページの日本語ページを翻訳・公開しています。
... のプロセスのプロセス ID を返す。(テンポラリ用のファイル名として 他と重ならない名前を生成するルーチンでしばしば使用される。) getppid () は呼び出し元のプロセスの親プロセスのプロセス ID を返す。 エラー これらの関数は常に成功する。 準拠 POSIX.1-2001, 4.3BSD, ... ... のプロセスのプロセス ID を返す。(テンポラリ用のファイル名として 他と重ならない名前を生成するルーチンでしばしば使用される。) getppid () は呼び出し元のプロセスの親プロセスのプロセス ID を返す。 エラー これらの関数は常に成功する。 準拠 POSIX.1-2001, 4.3BSD, ... ... 有オブジェクトが構成される。 $ cat libdemo.c #include < unistd.h > void consumeCpu1(int lim) { for (int j = 0; j < lim; j++) getppid(); } void x1(void) { for (int j = 0; j < 100; j++) consumeCpu1(200000); } void consumeCpu2(int lim) { for (int j = 0; j < ... lim; j++) getppid(); } void x2(void) { for (int j = 0; j < 1000; j++) consumeCpu2(10000); } ここで、 実際の名前は libdemo.so.1.0.1 で soname ... ... 以下に示すような点がある: - getpid (2) を呼び出したときに、スレッド毎に異なる値が返される。 - メインスレッド以外のスレッドで getppid (2) を呼び出すと、管理スレッドのプロセス ID が返される。 本当は、これらのスレッドで getppid (2) を呼んだ場合にはメインスレ ... ッドでの getppid (2) と同じ値が返るべきである。 - あるスレッドが fork (2) を使って新しい子プロセスを作成した場合、 どのスレッドでもこの子プ ... ... Main thread sleeping\n"); sleep (1); printf("Main thread consuming some CPU time...\n"); for (int j = 0; j < 2000000; j++) getppid(); pclock("Process total CPU time: ", CLOCK_PROCESS_CPUTIME_ID); s = pthread_getcpuclockid(pthread_self(), &cid); if (s != ... ... る。 親プロセス ID (PPID) プロセスの親プロセスの ID は、 fork (2) を使ってそのプロセスを生成したプロセスを示す。 プロセスは getppid (2) を使って自分の PPID を取得できる。 PPID は pid_t 型で表現される。 プロセスの PPID は execve (2) の前後で不変である。 プ ... (1), setpriv (1), sg (1), su (1), access (2), execve (2), faccessat (2), fork (2), getgroups (2), getpgrp (2), getpid (2), getppid (2), getsid (2), kill (2), setegid (2), seteuid (2), setfsgid (2), setfsuid (2), setgid (2), setgroups (2), setpgid (2), s ... ... TS 名前空間の詳細は namespaces (7) を参照。 CLONE_PARENT (Linux 2.3.12 以降) CLONE_PARENT が設定された場合、新しい子供の ( getppid (2) で返される) 親プロセスは呼び出し元のプロセスの親プロセスと同じになる。 CLONE_PARENT が設定されていない場合、 ( fork (2 ... ) と同様に) 呼び出し元のプロセスがその子供の親になる。 子供が終了した時にシグナルが送られるのは getppid (2) が返す親プロセスである点に注意すること。このため CLONE_PARENT が設定された場合、呼び出し元のプロセスではなく呼び出し元 ... 指定して作成された新しいスレッドは、 ( CLONE_PARENT の場合と同様に) clone () を呼び出し元と同じ親プロセスを持つ。 そのため、 getppid (2) を呼ぶと、一つのスレッドグループに属すスレッドは全て同じ値を返す。 CLONE_THREAD で作られたスレッドが終了した際に、 その ... ... TS 名前空間の詳細は namespaces (7) を参照。 CLONE_PARENT (Linux 2.3.12 以降) CLONE_PARENT が設定された場合、新しい子供の ( getppid (2) で返される) 親プロセスは呼び出し元のプロセスの親プロセスと同じになる。 CLONE_PARENT が設定されていない場合、 ( fork (2 ... ) と同様に) 呼び出し元のプロセスがその子供の親になる。 子供が終了した時にシグナルが送られるのは getppid (2) が返す親プロセスである点に注意すること。このため CLONE_PARENT が設定された場合、呼び出し元のプロセスではなく呼び出し元 ... 指定して作成された新しいスレッドは、 ( CLONE_PARENT の場合と同様に) clone () を呼び出し元と同じ親プロセスを持つ。 そのため、 getppid (2) を呼ぶと、一つのスレッドグループに属すスレッドは全て同じ値を返す。 CLONE_THREAD で作られたスレッドが終了した際に、 その ... ... TS 名前空間の詳細は namespaces (7) を参照。 CLONE_PARENT (Linux 2.3.12 以降) CLONE_PARENT が設定された場合、新しい子供の ( getppid (2) で返される) 親プロセスは呼び出し元のプロセスの親プロセスと同じになる。 CLONE_PARENT が設定されていない場合、 ( fork (2 ... ) と同様に) 呼び出し元のプロセスがその子供の親になる。 子供が終了した時にシグナルが送られるのは getppid (2) が返す親プロセスである点に注意すること。このため CLONE_PARENT が設定された場合、呼び出し元のプロセスではなく呼び出し元 ... 指定して作成された新しいスレッドは、 ( CLONE_PARENT の場合と同様に) clone () を呼び出し元と同じ親プロセスを持つ。 そのため、 getppid (2) を呼ぶと、一つのスレッドグループに属すスレッドは全て同じ値を返す。 CLONE_THREAD で作られたスレッドが終了した際に、 その ... ... TS 名前空間の詳細は namespaces (7) を参照。 CLONE_PARENT (Linux 2.3.12 以降) CLONE_PARENT が設定された場合、新しい子供の ( getppid (2) で返される) 親プロセスは呼び出し元のプロセスの親プロセスと同じになる。 CLONE_PARENT が設定されていない場合、 ( fork (2 ... ) と同様に) 呼び出し元のプロセスがその子供の親になる。 子供が終了した時にシグナルが送られるのは getppid (2) が返す親プロセスである点に注意すること。このため CLONE_PARENT が設定された場合、呼び出し元のプロセスではなく呼び出し元 ... 指定して作成された新しいスレッドは、 ( CLONE_PARENT の場合と同様に) clone () を呼び出し元と同じ親プロセスを持つ。 そのため、 getppid (2) を呼ぶと、一つのスレッドグループに属すスレッドは全て同じ値を返す。 CLONE_THREAD で作られたスレッドが終了した際に、 その ... 日本語の文書やマニュアルを配布している個人/プロジェクトへのリンクです。