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>