Linux has worked pretty hard to optimize fork(). This doesn’t mean that fork() is a good idea.
Windows does not historically depend on fork(), so there was no native fork(), so Cygwin kludged it up.
Windows does not historically depend on fork(), so there was no native fork(), so Cygwin kludged it up.
Though actually iirc werfault uses NtCreateUserProcess() to clone processes when writing out crash dumps to this day