Except fork() doesn't do what CreateProcess() does. I'd actually be pretty interested to see a fair comparison: a list of Unix system calls, with arguments, that covers all the functionality of CreateProcess(). Are you completely sure that it'll be smaller and more elegant?