This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]