Advertisement
Paszta

Próbny kolos z so

Jun 10th, 2019
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.60 KB | None | 0 0
  1. Zad1.
  2.  
  3. lib.h:
  4.  
  5. void name();
  6. void  surname();
  7. void  address();
  8.  
  9. ja.c:
  10.  
  11. #include "lib.h"
  12. int main(){
  13.     name();
  14.     surname();
  15.     address();
  16. }
  17.  
  18. makefile:
  19.  
  20. .PHONY: CLEAN
  21. ALL: Ja
  22. Ja: ja.o lib.a
  23.     gcc -o Ja ja.o lib.a
  24. ja.o: ja.c
  25.     gcc -c ja.c
  26. lib.a: name.o surname.o address.o
  27.     ar rs lib.a name.o surname.o address.o
  28. name.o: name.c
  29.     gcc -c name.c
  30. surname.o: surname.c
  31.     gcc -c surname.c
  32. address.o: address.c
  33.     gcc -c address.c
  34. clean:
  35.     rm -f *.o *.a *.so Ja
  36.  
  37. zad2.
  38.  
  39. #include <sys/types.h>
  40. #include <unistd.h>
  41. #include <stdio.h>
  42. #include <stdlib.h>
  43.  
  44. int main(int argc, char** argv){
  45.    
  46. pid_t moj;
  47. uid_t uzytkownik;
  48. gid_t grupa;
  49.  
  50. moj = getpid();
  51. uzytkownik = getpid();
  52. grupa = getgid();
  53.  
  54. printf("Moj id to: %d\n ", moj);
  55. printf("Id uztkownika to %d\n", uzytkownik);
  56. printf("id grupy to %d\n", grupa);
  57.    
  58. pid_t pid_potomka;
  59. char* komunikat;
  60. int powt;
  61. int i;
  62. char katalog[100];
  63. //sciezka = "/home/student/Pulpit";
  64. printf("Dziala tylko jeden\n");
  65. pid_potomka = fork(); //rozdzielenie procesu
  66. switch(pid_potomka){
  67.     case -1:
  68.         printf(" Nie rozdzielono");
  69.         exit(1);
  70.     case 0:
  71.         getcwd(katalog, sizeof(katalog));
  72.         printf("katalog to %s\n", katalog);
  73.         chdir("/home/student/Pulpit");   // zmiana katalogu nie dziala
  74.         getcwd(katalog, sizeof(katalog));
  75.         printf("nowy katalog to %s\n", katalog);
  76.         break;
  77.     case 1:
  78.         komunikat = "Jestem rodzicem";
  79.         powt = 3;
  80.         break;
  81. }
  82.  
  83. printf("argc = %d\n", argc);
  84. for(i=0; i<= argc; i++){
  85. printf("argv to %s\n", argv[i]);
  86. }
  87.  
  88.    
  89. return 0;
  90. }
  91.  
  92.  
  93. zad4.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement