01.12.2012 Views

Introducere în Linux Un ghid la îndemână - "Tille" Garrels

Introducere în Linux Un ghid la îndemână - "Tille" Garrels

Introducere în Linux Un ghid la îndemână - "Tille" Garrels

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Opţiunile -u şi -a oferă informaţii adiţionale. Pentru mai multe opţiuni şi ceea ce fac ele,<br />

consultaţi paginile Info.<br />

În secţiunea următoare veţi af<strong>la</strong> cum un proces poate crea altul.<br />

4.1.5. Viaţa şi moartea unui proces<br />

4.1.5.1. Crearea unui proces<br />

<strong>Un</strong> proces nou este creat deoarece un proces existent face o copie exactă a lui <strong>în</strong>suşi. Acest<br />

proces copil dispune de ace<strong>la</strong>şi mediu ca părintele său, numai numărul ID este diferit. Această procedură<br />

este numită forking (bifurcaţie).<br />

După procesul de bifurcaţie, spaţiul de adresare al procesului copil este suprascris cu datele noului<br />

proces. Acest lucru este realizat printr-o ape<strong>la</strong>re exec către sistem.<br />

Mecanismul fork-and-exec schimbă aşadar o comandă veche cu una nouă, <strong>în</strong> timp ce mediul <strong>în</strong><br />

care este executat noul program rămâne neschimbat, incluzând configuraţia dispozitivelor de intrare şi ieşire,<br />

variabilele de mediu şi priorităţile. Acest mecanism este folosit pentru crearea tuturor proceselor UNIX,<br />

aplicându-se astfel şi sistemelor de operare <strong>Linux</strong>. Chiar primul proces, init, care are numărul ID 1, este<br />

bifurcat pe parcursul procedurilor de pornire (boot) <strong>în</strong> aşa-numita procedură bootstrapping.<br />

Schema următoare ilustrează mecanismul fork-and-exec. ID-ul proceselor sunt schimbate după<br />

procedura de bifurcaţie:<br />

Figura 4-1. Mecanismul fork-and-exec<br />

71

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!