fork and exec (was: Re: Proposed patch to system.XWinrc)

Christopher Faylor cgf-use-the-mailinglist-please@cygwin.com
Wed Jul 1 15:12:00 GMT 2009


On Wed, Jul 01, 2009 at 06:55:35AM +0100, Andy Koppe wrote:
>2009/6/23 Christopher Faylor:
>>>If posix_spawn() ever gets implemented in Cygwin to
>>>avoid the slowness of fork(), /bin/sh might well change to the first
>>>shell that supports it.
>>
>> It's really somewhat of an urban myth about Cygwin's fork being slow.
>> Cygwin's exec is also pretty slow. ??I'm not really sure that posix_spawn
>> would cause any kind of performance improvement.
>
>Ah, right. So is it Windows' CreateProcess() itself that's slow? Or is
>it some of the additional stuff that exec() needs to deal with?
>Signals? The hidden console?

The majority of the exec code is in spawn.cc - spawn_guts().  You can
see for yourself that this is not a simple function.

Just remember that neither fork nor exec have native Windows analogues.

cgf

--
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



More information about the Cygwin mailing list