̾??
fork
—
???????ץ???????????????
Standard C Library (libc, -lc)
fork
()
?????ƥॳ?????ˤ??äƿ??????ץ??????κ??????Ԥ????ޤ???
???????ץ????? (?ҥץ?????)?ϡ?
?ʲ??ι??ܤ????????ƤӽФ??ץ?????
(?ƥץ?????) ?????Τʥ??ԡ??Ǥ???
- ?ҥץ??????ϥ??ˡ????ʥץ????? ID
???????ޤ???
- ?ҥץ??????ϰۤʤ??ƥץ????? ID
???????ޤ?
(???ʤ??????ƥץ??????Υץ????? ID
?Ǥ?)??
- ?ҥץ??????ϡ????ѤΡ??Ƥε??һҤΥ??ԡ????????ޤ???
???????ε??һҤϲ??ؤ?Ʊ?????֥??????ȤȤ??ޤ???
?Ĥޤ??ҤȿƤδ֤ǡ????Ȥ??Хե????륪?֥???????????
?ե??????ݥ?????ͭ?????ޤ???
???Τ????ҥץ??????ε??һҤؤ?
lseek(2)
???????θ??οƤˤ???
read(2)
?ޤ???
write(2)
?˱ƶ????ڤܤ??ޤ???
???ε??һҥ??ԡ??ϡ??????????????줿?ץ??????Ѥ?ɸ???????Ϥ???Ω???뤿???ˡ?
?????ӥѥ??פåȥ??åפ??뤿???ˡ????????ˤ??äƤ????Ѥ????ޤ???
- ?ҥץ??????Υ???????Ѿ????? 0
?????ꤵ???ޤ???
setrlimit(2)
?Ȥ??Ƥ?????????
- ???٤ƤΥ????Х륿???ޤ????ꥢ?????ޤ???
setitimer(2)
?Ȥ??Ƥ?????????
?????˴?λ???????硢
fork
() ?ϡ??ҥץ????????? 0
???֤????ҥץ??????Υץ????? ID
???ƥץ????????֤??ޤ???
?????Ǥʤ??????? -1
???ƥץ????????֤??졢?ҥץ??????Ϻ??????줺?ˡ?
???顼???????˥??????Х??ѿ?
errno ?????ꤵ???ޤ???
???ξ????? fork
()
?????ƥॳ?????Ͻ????˼??Ԥ????ҥץ??????Ϻ????????ޤ???:
- [
EAGAIN
]
- ?¹????Υץ??????ι??????????ƥ??θ³???Ķ???ޤ???
?³??ͤ?
sysctl(3)
?? MIB ?ѿ???
KERN_MAXPROC
?ˤ??äƻ??ꤵ???ޤ?
(?????ѥ桼?????????ơ?
?ºݤˤϸ³??Ϥ??????? 10
?ľ??ʤ??ʤ??ޤ?)??
- [
EAGAIN
]
- ?桼?????????ѥ桼???Ǥʤ??? 1
?ͤΥ桼???ˤ??äƼ¹????Υץ??????ι????????????ƥ??θ³????ۤ??ޤ???
?³???
sysctl(3)
?? MIB ?ѿ???
KERN_MAXPROCPERUID
?ˤ??äƻ??ꤵ???ޤ???
- [
EAGAIN
]
- ?桼?????????ѥ桼???Ǥʤ???
resource ??????
RLIMIT_NPROC
???б????륽?եȥ?????³????ۤ??ޤ?
(getrlimit(2)
??)??
- [
ENOMEM
]
- ???????ץ??????ѤΥ????å??֤??Խ?ʬ?Ǥ???
fork
() ?ؿ???
Version 6 AT&T UNIX
???о줷?ޤ?????