Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 3 Feb 2001 00:36:07 +0200 (EET)
From:      Maxim Sobolev <sobomax@FreeBSD.ORG>
To:        dillon@earth.backplane.com (Matt Dillon)
Cc:        sobomax@FreeBSD.ORG (Maxim Sobolev), dima@unixfreak.org (Dima Dorfman), mi@aldan.algebra.com, deischen@FreeBSD.ORG, cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG
Subject:   Re: mdconfig config file (was: cvs commit: src/sys/i386/conf GENERI C)
Message-ID:  <200102022236.f12Ma7N17166@vic.sabbo.net>
In-Reply-To: <200102022218.f12MIV700601@earth.backplane.com> from "Matt Dillon" at Feb 02, 2001 02:18:31 PM

next in thread | previous in thread | raw e-mail | index | archive | help
> 
> 
> :
> :> <snip>
> :> 
> :>     if ((pid = fork()) == 0) {
> :
> :Probably vfork() is better here, no?
> :
> :-Maxim
> 
>     My rule for using vfork() is:  Does it improve performance in
>     a noticeable way?  The answer, at least for mount_*, is no.  If the
>     answer is no, you should simply use a normal fork().
> 
>     fork() under FreeBSD is not all that expensive.  vfork() will be faster,
>     but unless you are fork/exec'ing a few dozen commands a second you will
>     never notice the difference.

Well, I'm using a slightly different rule: Does it really need a full fork()
to work correctly. The answer in this case is obviously no. Therefore vfork()
could (and should IMO) be used instead. While it obviously wouldn't make any
difference from the performance standpoind, but it's better from the
ideological standpoint (for example one can cut'n'paste this handy code into
his own program w/o taking into consideration fork() vs. vfork() issue).

-Maxim


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200102022236.f12Ma7N17166>