
|
$BA0(B
-
$B>e(B
-
$B
-
$BL\
-
Process
-
UNIX$B$N%W%m%;%9$r4IM}$9$k%b%8%e!<%k!%(B
Math $B%b%8%e!<%k$HF1MM$K$3(B
$B$N%b%8%e!<%k$bDj5A$5$l$F$$$k%a%=%C%I$OA4$F(B
$B%b%8%e!<%k4X?t(B$B$G$9!%(B
Process $B$,%W%m%;%9$rI=8=$9$k%/%i%9$G$O$J$/!$%W%m(B
$B%;%9$KBP$9$kA`:n$r$^$H$a$?%b%8%e!<%k$G$"$k$3$H$KCm0U$7$F$/$@(B
$B$5$$!%(B
-
$B%b%8%e!<%kB0@-(B:
-
-
egid
-
$B
-
egid= gid
-
$B
-
euid
-
$B
-
euid= uid
-
$B
-
gid
-
$B
-
gid= gid
-
$B
-
pid
-
$B%W%m%;%9(BID$B!%JQ?t(B$$ $B$NCM$HF1$8!%(B
-
ppid
-
$B?F%W%m%;%9$N%W%m%;%9(BID$B!%(BUN*X$B$G$Oppid$B$O(B1(init$B$N(Bpid)$B$K$J$j$^$9!%(B
-
uid
-
$B%W%m%;%9$N
-
uid= uid
-
$B%W%m%;%9$N
-
$B%b%8%e!<%k4X?t(B:
-
-
getpgrp([pid])
-
pid$B$N%W%m%;%9$N%W%m%;%9%0%k!<%W$rJV$7$^$9!%(B
pid$B$,(B0$B$N;~$d>JN,$5$l$?;~$O%+%l%s%H%W%m%;%9$r0UL#(B
$B$7$^$9!%(B
-
getpriority(which, who)
-
$B%W%m%;%9!$%W%m%;%9%0%k!<%W!$%f!<%6$N8=:_$N%W%i%$%*%j%F%#$rJV(B
$B$7$^$9!%(Bgetpriority(2)$B;2>H!%(B
Process $B%b%8%e!<%k$O(Bwhich$B$H$7$F;XDj$G(B
$B$-$kDj?t(BPRIO_PROCESS, PRIO_PGRP,
PRIO_USER$B$rDj5A$7$F$$$^$9!%(B
kill(signal, pid...)
-
pid$B$G;XDj$5$l$?%W%m%;%9$K%7%0%J%k$rAw$j$^$9!%(B
signal$B$O%7%0%J%kHV9f$+L>A0$G;XDj$7$^$9!%Ii$NCM$r(B
$B;}$D%7%0%J%k(B($B$"$k$$$O%7%0%J%kL>$NA0$K(B- )$B$rM?$($k(B
$B$H%W%m%;%9$G$O$J$/%W%m%;%9%0%k!<%W$K%7%0%J%k$rAw$j$^$9!%(B
-
setpgrp(pid, pgrp)
-
pid$B$N%W%m%;%9%0%k!<%W$r@_Dj$7$^$9!%(Bpid$B$,(B
0$B$N;~$O%+%l%s%H%W%m%;%9$r0UL#$7$^$9!%(B
-
setpriority(which, who, prio)
-
$B%W%m%;%9!$%W%m%;%9%0%k!<%W!$%f!<%6$N8=:_$N%W%i%$%*%j%F%#$r@_(B
$BDj$7$^$9!%(Bsetpriority(2)$B;2>H!%(B
Process $B%b%8%e!<%k$O(Bwhich$B$H$7$F;XDj$G(B
$B$-$kDj?t(BPRIO_PROCESS, PRIO_PGRP,
PRIO_USER$B$rDj5A$7$F$$$^$9!%(B
-
setsid()
-
$B?7$7$$%;%C%7%g%s$r:n@.$7$F!$(Btty$B$r@Z$jN%$7$^$9!%%G!<%b%s$r(B
$B4JC1$K:n$k$3$H$,$G$-$^$9!%%;%C%7%g%s(BID$B$rJV$7$^$9!%(B
wait
-
$B;R%W%m%;%9$,=*N;$9$k$N$rBT$A!$=*N;$7$?;R%W%m%;%9$N(Bpid$B$rJV$7$^$9!%(B
$B;R%W%m%;%9$,0l$D$b$J$1$l$P(BErrno::ECHILD $BNc30$rH/@8$5$;$^$9!%(B
waitpid(pid, flags)
-
pid$B$G;XDj$5$l$kFCDj$N;R%W%m%;%9$N=*N;$rBT$A!$$=$N(B
$B%W%m%;%9$,=*N;$7$?;~$K(Bpid $B$rJV$7$^$9!%;R%W%m%;%9(B
$B$,B8:_$7$J$1$l$P(BErrno::ECHILD $BNc30$rH/@8$5$;$^$9!%(B
$B%N%s%V%m%C%-%s%0%b!<%I$G;R%W%m%;%9$,$^$@=*N;(B
$B$7$F$$$J$$;~$K$O(Bnil $B$rJV$7$^$9!%(B
`waitpid(2)'$B$+(B`wait4(2)'$B$Nflags$B$O$$$D$b(Bnil $B$^(B
$B$?$O(B0$B$r;XDj$9$kI,MW$,$"$j$^$9!%(B
-
$BDj?t(B:
-
-
PRIO_PROCESS
-
getpriority $B$^$?$O(Bsetpriority $B$N%W%m(B
$B%;%9%W%i%$%*%j%F%#;XDj!%(B
-
PRIO_PGRP
-
$B%W%m%;%9%0%k!<%W%W%i%$%*%j%F%#!%(B
-
PRIO_USER
-
$B%f!<%6%W%i%$%*%j%F%#!%(B
-
WNOHANG
-
$B=*N;$7$?;R%W%m%;%9$,$J$$;~D>$A$K=*N;$7$^$9!%(B
-
WUNTRACED
-
$B%9%F!<%?%9$rJs9p$7$F$$$J$$;R%W%m%;%9$,$"$k;~$K$O=*N;$7$^$9!%(B
$BA0(B
-
$B>e(B
-
$BL\
matz@netlab.co.jp
|