Advertisement
Guest User

Untitled

a guest
Oct 14th, 2019
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.76 KB | None | 0 0
  1. /////2///////
  2.  
  3. #include <stdlib.h>
  4. #include <stdio.h>
  5. main()
  6. {
  7. int childpid;
  8. int status=1;
  9. int zakonczono;
  10. printf("startuje proces macierzysty pid %d\n",getpid());
  11. if ((childpid = fork()) == -1)
  12. {
  13. perror("nie moge forknac");
  14. exit(1);
  15. }
  16. else
  17. if (childpid ==0 )
  18. {
  19. printf("Proces potomny o pidzie %d z rodzica %d\n",getpid(),getppid());
  20. }
  21. else
  22. {
  23. printf("Proces macierzysty o pidzie %d i dziecku %d\n",getpid(),childpid);
  24. }
  25. exit(0);
  26. }
  27.  
  28. ////////3/////////////////////
  29.  
  30. #include <stdio.h>
  31. #include <stdlib.h>
  32.  
  33. int childpid, status;
  34.  
  35. int main(){
  36. printf("Wystartowal proces macierzysty. PID: %d\n",getpid());
  37.  
  38. if ((childpid = fork()) == -1){
  39. perror("nie moge forknac");
  40. exit(1);
  41. } else if (childpid == 0){
  42. sleep(5);
  43. printf("Proces potomny o pidzie %d z rodzica %d\n",getpid(),getppid());
  44. } else {
  45. printf("Proces macierzysty o pidzie %d i dziecku %d\n",getpid(),childpid);
  46. }
  47.  
  48. exit(0);
  49. }
  50. ////////////////3_2/////////////////////
  51.  
  52. #include <stdio.h>
  53. #include <stdlib.h>
  54.  
  55. int childpid, status;
  56.  
  57. int main(){
  58. printf("Wystartowal proces macierzysty. PID: %d\n",getpid());
  59.  
  60. if ((childpid = fork()) == -1){
  61. perror("nie moge forknac");
  62. exit(1);
  63. } else if (childpid == 0){
  64. printf("Proces potomny o pidzie %d z rodzica %d\n",getpid(),getppid());
  65. } else {
  66. sleep(5);
  67. system("ps -efa");
  68. printf("Proces macierzysty o pidzie %d i dziecku %d\n",getpid(),childpid);
  69. }
  70.  
  71. exit(0);
  72. }
  73. /////////////////////////////4//////////////////////////////
  74. #include <stdio.h>
  75. #include <stdlib.h>
  76.  
  77. int childpid, status;
  78.  
  79. int main(){
  80. printf("Wystartowal proces macierzysty. PID: %d\n",getpid());
  81.  
  82. if ((childpid = fork()) == -1){
  83. perror("nie moge forknac");
  84. exit(1);
  85. } else if (childpid == 0){
  86. printf("Proces potomny o pidzie %d z rodzica %d\n",getpid(),getppid());
  87. sleep(3);
  88. exit(2);
  89. } else {
  90. printf("Proces macierzysty o pidzie %d i dziecku %d\n",getpid(),childpid);
  91. wait(&status);
  92. printf("Proces potomny sie zakonczyl\n");
  93. printf("%d\n", status);
  94. }
  95.  
  96. exit(0);
  97. }
  98. //////////////////////5//////////////////////////////////////////
  99. #include <stdio.h>
  100. #include <stdlib.h>
  101.  
  102. int childpid, status, i, parent;
  103.  
  104. int main(){
  105. for(i = 0; i < 5; i++){
  106. if ((childpid = fork()) == -1){
  107. perror("nie moge forknac");
  108. exit(1);
  109. } else if (childpid == 0){
  110. printf("Proces potomny o pidzie %d z rodzica %d\n",getpid(),getppid());
  111. sleep(2);
  112. exit(1);
  113. } else {
  114. printf("Proces macierzysty o pidzie %d i dziecku %d\n",getpid(),childpid);
  115. wait();
  116. }
  117. }
  118.  
  119. exit(0);
  120. }
  121. ///////////////////6////////////////////////
  122.  
  123. #include <stdio.h>
  124. #include <stdlib.h>
  125.  
  126. int childpid, status, i, parent;
  127.  
  128. int main(){
  129. for(i = 0; i < 5; i++){
  130. if ((childpid = fork()) == -1){
  131. perror("nie moge forknac");
  132. exit(1);
  133. } else if (childpid == 0){
  134. printf("Proces potomny o pidzie %d z rodzica %d\n",getpid(),getppid());
  135. if(i == 4) sleep(3);
  136. else wait();
  137. } else {
  138. printf("Proces macierzysty o pidzie %d i dziecku %d\n",getpid(),childpid);
  139. wait();
  140. exit(1);
  141. }
  142. }
  143.  
  144. exit(0);
  145. }
  146. /////////////////////////////7///////////////////////////////
  147. #include <stdio.h>
  148. #include <stdlib.h>
  149. #include <signal.h>
  150.  
  151. int childpid, status, i, parent;
  152.  
  153. void sigchldhandler(int nr){
  154. printf("Potomek sie zakonczyl\n");
  155. }
  156.  
  157. int main(){
  158. signal(SIGCHLD, sigchldhandler);
  159.  
  160. for(i = 0; i < 5; i++){
  161. if ((childpid = fork()) == -1){
  162. perror("nie moge forknac");
  163. exit(1);
  164. } else if (childpid == 0){
  165. printf("Proces potomny o pidzie %d z rodzica %d\n",getpid(),getppid());
  166. exit(1);
  167. } else {
  168. printf("Proces macierzysty o pidzie %d i dziecku %d\n",getpid(),childpid);
  169. }
  170. }
  171.  
  172. exit(0);
  173. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement