FORK

Section: System Calls (2)
索引 jman

BSD mandoc
 

索引

名称

fork - 新しいプロセスを作成する  

索引

ライブラリ

Lb libc  

索引

書式

In sys/types.h In unistd.h Ft pid_t Fn fork void  

索引

解説

Fn fork システムコールによって新しいプロセスの作成が行われます。 新しいプロセス (子プロセス)は、 以下の項目を除いた呼び出しプロセス (親プロセス) の正確なコピーです。

 

索引

戻り値

正常に完了した場合、 Fn fork は、子プロセスに値 0 を返し、子プロセスのプロセス ID を親プロセスに返します。 そうでない場合は -1 が親プロセスに返され、子プロセスは作成されずに、 エラーを示すためにグローバル変数 errno が設定されます。  

索引

エラー

次の場合に Fn fork システムコールは処理に失敗し、子プロセスは作成されません:

Bq Er EAGAIN
実行中のプロセスの合計数がシステムの限界を超えます。 限界値は sysctl(3) の MIB 変数の KERN_MAXPROC によって指定されます (スーパユーザを除いて、 実際には限界はこれより 10 個少なくなります)。
Bq Er EAGAIN
ユーザがスーパユーザでなく、 1 人のユーザによって実行中のプロセスの合計数が、システムの限界を越えます。 限界は sysctl(3) の MIB 変数の KERN_MAXPROCPERUID によって指定されます。
Bq Er EAGAIN
ユーザがスーパユーザでなく、 Fa resource 引数の RLIMIT_NPROC に対応するソフトリソース限界を越えます ( getrlimit(2) を参照)。
Bq Er ENOMEM
新しいプロセス用のスワップ空間が不充分です。

 

索引

関連項目

execve(2), rfork(2), setitimer(2), setrlimit(2), vfork(2), wait(2)  

索引

歴史

Fn fork 関数は AT&T System v6 で登場しました。


 

索引

Index

名称
ライブラリ
書式
解説
戻り値
エラー
関連項目
歴史

jman



Time: 07:06:25 GMT, January 12, 2009