This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: Efficient posix_spawn implementation for Cygwin
On 1/3/2012 2:43 PM, Ryan Johnson wrote:
> On 03/01/2012 5:25 PM, dancol@dancol.org wrote:
>> posix_spawn [1] is an optional POSIX facility that allows programs to
>> start other programs without using fork or vfork. I've created an
>> efficient implementation of posix_spawn for Cygwin. The code is available
>> at https://github.com/dcolascione/cygspawn.
>>
>> This library uses Cygwin's nonstandard spawn* family calls in
>> process.h to
>> provide the full suite of posix_spawn* functionality. Implementing
>> posix_spawn in terms of spawn turns out to be non-trivial. Nevertheless,
>> using posix_spawn can improve process startup performance considerably,
>> especially for large programs:
> This probably belongs at cygwin-dev, but it sounds interesting
> (especially if it allows less-frequent invocation of the rebaseall ritual).
This code is a user library. It doesn't require anything not already in
cygwin1.dll. While it'd be _better_ to integrate this functionality
into the core, of course, doing so isn't required to make the feature
work: that's why I posted to this list.
> However, you should check out the copyright assignment requirements [2]
> if you want the code to make it upstream.
Of course I'll assign copyright if the code makes it upstream in some form.
Thanks,
Daniel Colascione
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple