That's more or less true for Linux, but not for Mac OS X at least up
till 10.4.x (I haven't benchmarked on 10.5 yet). Compiling our
compiler with itself, which involves about 173 (v)fork+execs from a
single compiler run to assemble&link all the files, is 20% to 25%
slower with fork instead of vfork on a G4, and 35% to 40% on a G5
(32 bit processes in both cases) on 10.4.x. And for clarity: this is
relative to the entire time needed for compiling+assembling+linking
everything (on the G5: 24 vs 15 seconds), not some academic mbench-
like speed difference between the fork and vforks.
It would be interesting to benchmark this in 10.5 as well, given a
number of changes to the relevant code, but the original poster who
noted that vfork() was deprecated was correct. At some point, I would
not be at all surprised to see a "#define vfork fork" in unistd.h so
that code path can be deprecated entirely. In another couple of
releases, posix_spawn(2) will also hopefully be far enough in our rear
view mirrors that developers can standardize on it.
- Jordan
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/darwin-dev/email@hidden