[so] [Tema2][Linux] Numarul de fork-uri necesare pentru implementarea pipe-ului
Costin Lupu
costin.lup at gmail.com
Tue Mar 29 16:23:36 EEST 2016
Salutare, Teodor,
On Tue, 2016-03-29 at 16:02 +0300, Teodor Ciuraru via so wrote:
> 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.
Nu înțeleg ce vrei să zici nici prin "un singur fork()", nici prin
"fork-uri întrepătrunse". Care sunt link-urile unde ai găsit aceste
informații?
> 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?
Costin
More information about the so
mailing list