David Xu wrote:

I just want to make some programs to work, since Linux and Solaris
both have it now. Doing it in kernel is OK, but I don't want to put
it into the kernel until it is necessary since kernel code can not
be swapped out. ;-)

Doing in kernel may have advantages, for example, you may get ride
of zoombie process recycling by hacking kernel, a library version
using vfork will need parent to handle SIGCHLD and recycle zoombie process like you use popen() and system() etcs,

Oops, I rethinked it, zoombie process is not a correct point.
only rtld is the problem.

another advantage
is it won't involve rtld if a symbol needs to resolved, because
vfork shares same vmspace, it might block other threads in
parent process if the child process holding a rtld's
reader lock, I don't know if writer lock will be held in child,
I guess it won't be. if the child process get killed wrongly
by someone, it might hold reader lock forever, this is the race
condition. a kernel version may have trouble if something can not
be easily done in kernel, though I didn't find the one can not
be done in kernel at present.

Regards,
David Xu



_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to