tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: __vfork14()

In article <>,
Jim Wise  <> wrote:
>Quick question, out of curiosity, about NetBSD's vfork():
>In 1998, we switched vfork() back from the 4.4 semantics (Copy-on-Write
>until exec) to the traditional BSD semantics (shared address space
>between parent and child until exec()).  I'm curious about the how this
>is used:
>  -- was this an optimization, with code working pretty much as before,
>     but gaining speed from not doing a bunch of unneeded Copy-on-Write
>     setup?

Yes. Look in the mailing lists on how much the shell performance improved
when elric switched it to vfork for the common cases.

>  -- are there programs in-tree which depend on the shared address space
>     semantics?

Yes, csh.

>  -- are there common third-party apps which do?

Probably not (except tcsh).

>  -- what do other systems do?

Print 0 in hashstat in csh.

>Needless to say, there's no lurking change behind this question -- just

Another important semantic is that vfork() has is that the parent is suspended
until the child execs.


Home | Main Index | Thread Index | Old Index