3. Detaliile unui proces

Înainte de a discuta despre aplicații mai practice ale proceselor, va trebui să înțelegem ce sunt și cum funcționează. Partea aceasta poate fi destul de greu de înțeles din moment ce ne afundăm în măruntaiele Linux-ului așa că vă puteți întoarce la aceasta lecție oricând, dacă nu doriți sa învățați despre ele chiar acum.

Un proces asa cum am discutat anterior este un program care rulează pe sistemul dvs. de calcul, mai exact sistemul îi alocă memorie, procesor, I/O pentru ca programul să funcționeze. Un proces este o instanță a unui program care rulează. Deschideți 3 ferestre terminal, în două dintre ele rulați comanda cat fără nici o alta opțiune (procesul cat va rămâne deschis deoarece acesta așteaptă întrări (stdin)). În cea de-a treia fereastră rulați: ps aux | grep cat. Veți vedea că sunt două procese pentru cat, deși acestea apelează același program.

Kernelul este responsabil de procese, așa că în momentul în care rulăm un program kernelul încărcă liniile de cod în memorie, determină și alocă resurse și ține o evidență a fiecărui proces astfel:

  • Starea procesului
  • Resursele pe care procesul le folosește și le primește
  • Proprietarul procesului
  • Gestionarea semnalului (vom vorbi despre asta mai încolo)
  • Și încă mulți alți parametri

Toate procesele încearcă să primească și să folosească cât mai multe resurse posibil, dar este datoria kernelului să se asigure că procesele primesc exact cât trebuie în funcție de cerințele procesului. În momentul în care un proces se termina, resursele folosite de acesta sunt alocate unui alt proces.


Exerciții

Nu sunt exerciții pentru această lecție.


Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Acest site folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.