Advertisement
Guest User

testing

a guest
May 24th, 2019
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.64 KB | None | 0 0
  1. Tema 2: Procese si Threaduri
  2. Student: Alexandru Turdean
  3. 1 Descrierea temei
  4.  
  5. 1.1 Procese si Threaduri
  6.  
  7. In aceast& tem& trebuie create procese si threaduri in Linux, a caror executie
  8. trebuie sincronizata. In afar de sincronizare, procesele si thread-urile voastre
  9. vor afisa doar céteva mesaje si se vor incheia. Sincronizarile cerute vor influneta
  10. ordinea in care mesajele sunt afisate.
  11.  
  12. Pentru ca solutia voastra sa poata fi testata automat, procesele si thread-
  13. urile voastre trebuie sa apeleze in locul potrivit si in ordinea corecta cateva
  14. functii, furnizate in fisierele “a2_helper.h” si “a2_helper.c”. Pentru aceasta,
  15. urmatoarele cerinte trebuie satisfacute:
  16.  
  17. 1. Procesul principal (cel care se creeaza la lansarea programului si este ilus-
  18. trat in Figura ?? ca P;) trebuie s& inceapa cu apelul functiei “init”, a
  19. carei rol este pregatirea programului pentru interactiunea cu tester-ul.
  20.  
  21. . Toate procesele (adica atat cel principal cat si cele create explicit de pro-
  22. gramul vostru), trebuie sa apeleze functia “info()” la inceput si inainte de
  23. final, cu anumite argumente predefinite, dupa cum se ilustreaza in caseta
  24. de mai jos, unde se poate observa cum ar trebui sa arate codul programu-
  25. lui principal si al unuia dintre procesele create.
  26.  
  27. Sample Process Code
  28. int main(int argc, char **argv)
  29.  
  30. {
  31.  
  32.  
  33.  
  34. // tester initialization
  35. // only one time in the main process
  36. initQ;
  37.  
  38. // inform the tester about (main) process’ start
  39. info(BEGIN, process_no, thread_no) ;
  40. // other process’ actions
  41.  
  42. // create a new process
  43.  
  44. if (fork() == 0) f
  45. // inform the tester about process’ start
  46. info(BEGIN, process_no, thread_no) ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement