/* FILE: myopen-new.c */ #include #include #include #include #include int main () { int pid; pid = fork(); if (pid < 0) { /* fork fallita */ printf("Errore in fork\n"); exit(3); } if (pid == 0) { /* figlio */ int fd; if ((fd = open("pippo", O_RDONLY)) < 0) { puts("ERRORE in apertura"); exit(1); } printf("Ho aperto il file pippo con fd = %d\n", fd); printf("Esecuzione di programma che visualizza file gia` aperto\n"); execl("prova1", "prova1", (char *)0); printf("Errore in execl\n"); exit(2); } /* padre */ wait ((int *)0); printf("Terminato figlio\n"); exit (0); }