Salut!

Legat de implementarea pipe-ului, am observat că pe Internet (pe Stack, cel 
puțin) sunt două tabere, tabară celor care prezintă implementarea pipe-ului cu 
un singur fork() și cea a celor care implementează cu două fork-uri, 
întrepătrunse.

Am încercat ambele variante și testele 9 și 10 trec în ambele cazuri.

Aș dori să știu de ce îmi trec testele, atât având un singur fork() la nivelul 
funcției do_on_pipe(), cât în cazul celor două fork-uri.

Singura diferență pe care am sesizat-o la implementarea cu un singur fork() 
este că, cu toate că testele trec, rulând o comandă cu operatorul pipe îmi 
închide mini-shell-ul deschis (ceea ce ar putea fi cauzat de altceva, dar în 
cazul altor comenzi nu se întâmplă).

Care este varianta corectă de implementare?


_______________________________________________
http://ocw.cs.pub.ro/courses/so/info/lista-discutii

Raspunde prin e-mail lui