I was having this same issue. Cygwin Xserver was working properly under Win XP, but the fork failure began occuring when I migrated to Win 7 Home Premium 32-bit. My issue was Microsoft Security Essentials was set to default which allows it to real time scan all files/directories/real-time processes. If you are also running this, I guarantee it is your problem (or at least one of them).
To resolve, open Security Essentials and navigate to the settings tab. Under the "Excluded files & locations" menu, add the cygwin root directory (C:\cygwin\ if you used the default install config). Under excluded processes, add startx.exe, startxwin.exe, xterm.exe, and Cygwin.bat. These files will all be in the C:\cygwin\ and C:\cygwin\bin\ directories. Save the changes to the firewall and give it a shot. -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://x.cygwin.com/docs/ FAQ: http://x.cygwin.com/docs/faq/