#include int main (int argc, char** argv) { printf("parent\n"); int i, pid; int execResult; if ((pid=vfork()) == -1) { printf("error creating process\n"); exit(1); } if (pid == 0) { execResult = execlp("./child.exe", "child", NULL); //only gets here in case of an error printf("execlp returned: %d\n",execResult); } if (pid > 0) { printf("child's pid=%d\n",pid); for (i=0; i<10; i++) { sleep(1); printf("parent again %d\n",i); } } return 0; }