Advertisement
Guest User

Untitled

a guest
Jun 26th, 2016
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.28 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <unistd.h>
  3. #include <errno.h>
  4. #include <stdlib.h>
  5. #include <sys/types.h>
  6. #include <unistd.h>
  7. #include <sys/wait.h>
  8. #define ROZMIAR 16
  9. char *msg1="Hello, world #1";
  10. char *msg2="Hello, world #2";
  11. char *msg3="Hello, world #3";
  12.  
  13. int main()
  14. {
  15. pid_t dziecko;
  16. int status;
  17. char bufor[ROZMIAR];
  18. int desc[2], j;
  19.  
  20. if(pipe(desc)==-1)
  21. {
  22. perror("Nie udalo sie utworzyc potoku");
  23. exit(1);
  24. }
  25.  
  26. dziecko = fork();
  27. switch(dziecko)
  28. {
  29. case -1:
  30. fprintf(stderr, "Nie mozna utworzyc procesu\n");
  31. exit(1);
  32. case 0:
  33. write(desc[1], msg1, ROZMIAR);
  34. write(desc[1], msg2, ROZMIAR);
  35. write(desc[1], msg3, ROZMIAR);
  36. perror("execl");
  37. exit(2);
  38. default:
  39. for(j=1; j<=3; j++)
  40. {
  41. read(desc[0], bufor, ROZMIAR);
  42. printf("%s\n", bufor);
  43. }
  44. waitpid(dziecko,&status,0);
  45. }
  46. exit(0);
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement