William Ahern wrote:
Though, the only practical question, I suppose, is whether supporting the
manifestly non-portable posix_spawn() interface is more or less work than not
using it. And perhaps ultimately it is preferable to use posix_spawn()
I think this:

http://www.opengroup.org/onlinepubs/009695399/functions/posix_spawn.html

says that it is de-jure portable, and systems that don't have it
yet can be expected to get it in future.

Granted some of the systems that you mention have dubious
(at best) commitment to the actual standards as published; I
don't know why you accuse Solaris of dragging its feet.

The platforms you mention were also tardy implementing decent
threading and aio support.  OpenBSD still is.

(And, I have to say, I trust the Solaris engineering team much more
for this sort of detail than the Linux 'team' in particular, and I'd take
FreeBSD's and NetBSD's development processes over Linux's too.)

But no matter - I think that:
- posix_spawn should be used if available
- failing that, try to do async signal safe fork/exec and hope that
 similar dynamic loader issues don't bite

Unless you can be sure that the process is single threaded and you
really need a forked process for C-o-W state snapshot etc.  I'm
not going to argue that fork/vfork etc are necessarily valueless now
or in the past - though its certainly the case that its necessity is a lot
less than it was when I started (and I felt spoiled at the time since I
had my own Sparc IPX and SunOS 4.1).

In the case in point for running the regression tests, I can't see
why there is a real need to do any address-space cloning - while
it may have been 'not broke so don't fix it' and an easy way to pass
the test parameters to the child, a need to implement an
exec-and-pass-params-and-resources solution  for Windows means
that a single model can be used for both: it just needs to be the
Windows one.  Why maintain two mechanisms? Its just asking for
one or other to suffer bitrot.

James

_______________________________________________
Libevent-users mailing list
Libevent-users@monkey.org
http://monkeymail.org/mailman/listinfo/libevent-users

Reply via email to