On Mon, 22 Sept 2025 at 12:49, Mark Liam Brown via Cygwin <[email protected]> wrote: > > On Mon, Sep 22, 2025 at 12:35 PM Mark Liam Brown > <[email protected]> wrote: > > > > Greetings! > > > > Why does Cygwin not use MiCloneProcessAddressSpace() for fork()? That > > function was added for the Windows Services for UNIX, and it still > > working in Windows 11. > > This is exposed to the userspace as NtCreateProcessEx() as documented > in https://github.com/huntandhackett/process-cloning
That is the basis for RtlCloneUserProcess(), which AT&T UWIN and SFU use. This is also the reason why UWIN runs circles around Cygwin in terms of fork() performance, which directly affects performance of shell scripts and /bin/make. That's also the reason we still have UWIN5 in use, Cygwin has terrible fork() performance. Lionel -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple

