vfork() (was Re: RS6000 questions/comments)
drake at drake.almaden.ibm.com
drake at drake.almaden.ibm.com
Sat Jun 29 15:57:24 AEST 1991
In article <351 at devnull.mpd.tandem.com> lance at mpd.tandem.com (Lance Hartmann) writes:
> The MAIN reason
>to use vfork() is when it is desired to spawn a child that does nothing
>but an execve(). With this scenario, it is unnecessary to copy the
>address space of the parent, so using vfork() is much more efficient.
While some systems with inefficient implementations of "fork()" require
a "vfork" mechanism in order for efficiency's sake, this is not a universal
situation. Many systems have efficient implementations of "fork()",
making "vfork()" much less necessary, and completely eliminating the
issue mentioned in the referenced article.
The RISC System/6000's fork() implementation is quite efficient, making
"vfork" unnecessary for performance reasons. Nonetheless, vfork() *is*
provided on the RISC System/6000, in the BSD compatibility library,
for the convenience of those porting BSD sources.
Sam Drake / IBM Almaden Research Center
Internet: drake at ibm.com BITNET: DRAKE at ALMADEN
Usenet: ...!uunet!ibmarc!drake Phone: (408) 927-1861
More information about the Comp.unix.aix
mailing list