Subject: FW: Re: Real vfork() (was: third results)
To: None <tech-kern@NetBSD.ORG>
From: None <jiho@postal.c-zone.net>
List: tech-kern
Date: 04/09/1998 11:57:58
> The first problem is, naturally, init.  It uses fork(), not vfork(), and it
> does so fairly inefficiently at that.  Simply rearranging the code in certain
> places would avoid most of its page duplications, even with fork(), and would
> make it suitable for converting to vfork().

Well, not quite "simply".  Turns out some of that "most" is allocated on the
stack.  Rearranging the code would not save those pages with either fork() or
__vfork14(), and codewise would probably be a step backward.

This will NOT be simple or quick.  There's a learning curve.

And init's usage (to take the first) is fairly complicated.

Perhaps I should ponder some other approach to testing the difference, short of
trying to rework several programs.

(Perhaps I'm backpeddling since Charles Hannum e-mailed me, requesting patches
from any programs I convert from fork() to vfork()....)


--Jim Howard  <jiho@mail.c-zone.net>


----------------------------------
E-Mail: jiho@mail.c-zone.net
Date: 09-Apr-98
Time: 09:10:59

This message was sent by XFMail
----------------------------------