[so] [Tema1][Linux] Problema la pipe
Alex
alexeurope2002 at yahoo.com
Fri Jul 18 00:32:48 EEST 2008
Salut.
M-am apucat si eu de tema 1 si totul a mers bine...parca prea bine pana la pipe. :|.
Dupa ce l-am zapacit prima data am zis ca reiau si am gandit altfel programul,am facut si un prg de test de 50 linii de cod si mergea...dar in tema acceasi idee nu merge.
Iata cum am gandit:
Cand intalnesc primul operator pipe creez recursiv pentru toate subnodurile lui care nu sunt comenzi simple cate 2 file descriptori in aux(din structura arborelui). Apoi dau drumu la executia proceselor in ordine. Dupa executia comenzilor din primul op pipe distrug adica dau free la toti file descriptorii alocati (ii inchid inainte),fac waitpid(-1,&status,0) pt a astepta toti copiii. In copil tin cont si fac toate legaturile necesare intre procese inainte de exec (le-am printat...sunt ok...zic eu :D ).Dupa ce fac legaturile inchid in copil toate celelalte pipe-uri(s-au copiat din parinte unde erau deschise deja).
Pb e ca nu merge :(. M-am chinuit si cu gdb-ul...nimic suspect.
Verific valorile intoarse.
Daca am cmd1 | cmd2 merge fara pb.
La 2 pipe-uri nu merge. Procesele mi se termina...deci nu ramane agatat.
Aveti vreo idee?
Mersi mult.
Alex Gavrila.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://cursuri.cs.pub.ro/pipermail/so/attachments/20080717/d3566c9c/attachment.htm
More information about the so
mailing list