[so] [Tema2][Linux] Numarul de fork-uri necesare pentru implementarea pipe-ului

Teodor Ciuraru teo.c029 at gmail.com
Tue Mar 29 16:02:59 EEST 2016


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?




More information about the so mailing list