Newsgroups: comp.unix.aix
Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!batcomputer!theory.TC.Cornell.EDU!shore
From: shore@theory.TC.Cornell.EDU (Melinda Shore)
Subject: Re: vfork() (was Re: RS6000 questions/comments)
Message-ID: <1991Jun29.133535.8354@batcomputer.tn.cornell.edu>
Keywords: compiler problems rs6000, vfork()
Sender: news@batcomputer.tn.cornell.edu
Nntp-Posting-Host: theory.tc.cornell.edu
Organization: Cornell Theory Center
References: <8903@awdprime.UUCP> <351@devnull.mpd.tandem.com> 
Distribution: usa
Date: Sat, 29 Jun 1991 13:35:35 GMT

In article <351@devnull.mpd.tandem.com> lance@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.

Since most contemporary Unixes support copy on write, there is no
compelling reason to use vfork when writing new code.  vfork only
exists because there was a bug in the Vax mm hardware a long, long time
ago (when BSD was first being developed).  And, as we all know, once
something goes into a system it can never come out.  Vfork lives on,
even though we don't need it.
-- 
                  Software longa, hardware brevis
Melinda Shore - Cornell Information Technologies - shore@tc.cornell.edu
