Buna seara,<br><br> <br>    Am o problema cu checker-ul de pe Linux. De cele mai multe ori se blocheaza, alteori se blocheaza dupa ce a rulat cateva teste. Cel putin o data, checker-ul a rulat toate testele fara sa se blocheze.  Uneori afiseaza mesajul &quot;(client.c, 104): mq_open: Cannot allocate memory&quot;. Inainte de a rula checkerul, sterg orice resurse partajate pe care le-ar putea folosi checker-ul (/mnt/cozi/gateway etc). <br>
<br>   Am rulat fiecare test separat, si fie se blocheaza checkerul, fie testul respectiv se termina cu succes. Am testat mecanismul de decriptare si manual. Am pornit pe rand: serverul (toate cele 4 instante), gateway-ul, si clientul de mai multe ori (ultima rulare a clientului a fost: ./client exit exit -1). Dupa ce fiecare proces din acest mecanism se termina, toate resursele partajate (semafoare, cozi de mesaje) sunt eliberate. <br>
<br>   Presupun ca checkerul se blocheaza din cauza comunicatiei pe coada de mesaje &quot;gateway&quot;. Am scris gateway-ul considerand ca trebuie sa creeze coada &quot;gateway&quot;, si la sfarsit s-o distruga. Daca gateway-ul o deschide, dimensiunea fiecarui mesaj este sizeof(message_t). Am luat in calcul si situatia in care clientul creaza coada &quot;gateway&quot;, caz in care dimensiunea unui mesaj ar fi mult mai mare. Am tratat acest caz atunci cand gateway-ul primeste un mesaj de la client (in acest caz, mesajul trebuie primit intr-un buffer mai mare). Dar n-am scapat de problema.<br>
<br>  Imi puteti da, va rog, un hint?<br><br><br>Multumesc,<br>    Bogdan Stirbat<br>