Advertisement
Guest User

Untitled

a guest
Dec 9th, 2019
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.72 KB | None | 0 0
  1. #include <sys/types.h>
  2. #include <sys/wait.h>
  3. #include <unistd.h>
  4. #include <stdio.h>
  5. #include <stdlib.h>
  6.  
  7. int main(void)
  8. {
  9. pid_t proces = getpid();
  10. char bufor [20];
  11. sprintf(bufor, "pstree -c %d", proces);
  12. printf("1 PID: %d, PPID: %d\n", getpid(), getppid());
  13. if(fork()==0)
  14. {
  15. printf("5 PID: %d, PPID: %d\n", getpid(), getppid());
  16. wait(NULL);
  17. }
  18. else if(fork()==0)
  19. {
  20. printf("4 PID: %d, PPID: %d\n", getpid(), getppid());
  21. wait(NULL);
  22. }
  23. else if(fork()==0)
  24. {
  25. printf("3 PID: %d, PPID: %d\n", getpid(), getppid());
  26. if(fork()==0)
  27. {
  28. printf("8 PID: %d, PPID: %d\n", getpid(), getppid());
  29. if(fork()==0)
  30. {
  31. printf("10 PID: %d, PPID: %d\n", getpid(), getppid());
  32. wait(NULL);
  33. }
  34. else if(fork()==0)
  35. {
  36. printf("9 PID: %d, PPID: %d\n", getpid(), getppid());
  37. wait(NULL);
  38. }
  39. wait(NULL);
  40. }
  41. else if(fork()==0)
  42. {
  43. printf("7 PID: %d, PPID: %d\n", getpid(), getppid());
  44. wait(NULL);
  45. }
  46. else if(fork()==0)
  47. {
  48. printf("6 PID: %d, PPID: %d\n", getpid(), getppid());
  49. wait(NULL);
  50. }
  51. wait(NULL);
  52. }
  53. else if(fork()==0)
  54. {
  55. printf("2 PID: %d, PPID: %d\n", getpid(), getppid());
  56. system(bufor);
  57. wait(NULL);
  58. }
  59. sleep(1);
  60. return 0;
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement