Care este diferența dintre fir, proces și program?


Cel mai bun răspuns

Program , Proces și Firele sunt trei concepte de bază ale sistemelor de operare despre care trebuie să fie familiarizat fiecare inginer informatic. . Aici, voi explica despre ce este vorba și despre diferența dintre ele.

Ce este un program?

Programul este un fișier executabil care conține setul de instrucțiuni scrise pentru a efectua o anumită lucrare pe computer. De exemplu, notepad.exe este un fișier executabil care conține setul de instrucțiuni care ne ajută să edităm și să tipărim fișierele text.

Programe nu sunt stocate în memoria primară din computer. Acestea sunt stocate pe un disc sau o memorie secundară pe computer. Acestea sunt citite în memoria primară și executate de nucleu. Un program este uneori denumit entitate pasivă deoarece se află pe o memorie secundară.

Ce este un proces?

Procesul este o instanță de executare a unui program. De exemplu, când faceți dublu clic pe o pictogramă de notepad de pe computer, se începe un proces care va rula programul de notepad.

Un proces este uneori denumit entitate activă deoarece se află pe memoria primară și părăsește memoria dacă sistemul este repornit. Mai multe procese pot fi legate de același program. De exemplu, puteți rula mai multe instanțe ale unui program de blocnotes. Fiecare instanță este denumită un proces.

Ce este un fir ?

Firul este cea mai mică unitate executabilă a unui proces. De exemplu, când rulați un program de notepad, sistemul de operare creează un proces și pornește executarea firului principal al procesului respectiv.

Un proces poate avea mai multe fire. Fiecare fir va avea propria sarcină și propria cale de execuție într-un proces. De exemplu, într-un program de notepad, un fir va prelua intrările utilizatorului și un alt fir va imprima un document.

Toate firele din același proces partajează memoria procesului respectiv. Deoarece firele din același proces au aceeași memorie, comunicarea dintre fire este rapidă.

Rezumând …

Sper că acum ești clar cu diferențele dintre program, proces și fir și ai descoperit și relația dintre ele … Dacă nu, află mai jos.

Programul este un super set de procese, întrucât, procesul este un super set de fire.

Bucurați-vă de învățare !!!

Amabilitatea imaginii: www.google.com

Răspuns

  1. Program : Programul nu este altceva decât setul tuturor instrucțiunilor care necesită efectuarea unei anumite sarcini specifice. Înainte de a intra în execuție, acestea trebuie convertite în coduri binare care ar trebui înțelese de sistemul de încărcare OS. cum ar fi fișierul EXE care este stocat în Executabil portabil (PE) Format pe memoria secundară La fel ca un hard disk. Un proces este de obicei definit ca o instanță a unui program în execuție și constă din două componente: 1) Un obiect kernel pe care sistemul de operare îl folosește pentru a gestiona procesul. Obiectul kernel este, de asemenea, locul în care sistemul păstrează informații statistice despre proces. 2) Un spațiu de adrese care conține toate codurile și datele executabile ale modulului DLL. Conține, de asemenea, alocări dinamice de memorie, cum ar fi stive de fire și alocări de heap. Procesele sunt inerte. rulează în contextul său; acest fir este responsabil pentru executarea codului conținut în spațiul de adrese al procesului. De fapt, un singur proces ar putea conține mai multe fire, toate executând cod „simultan” în spațiul de adrese al procesului. Pentru a face acest lucru, fiecare fir are propriul său set de registre CPU și propria stivă. Fiecare proces are cel puțin un fir care execută cod în spațiul de adrese al procesului. Dacă nu ar exista fire de execuție a codului în spațiul de adrese al procesului, nu ar exista niciun motiv pentru ca procesul să continue să existe și sistemul ar distruge automat procesul și spațiul său de adrese.
  2. Proces : fiecare proces oferă resursele necesare pentru a executa un program. Un proces are un spațiu de adrese virtuale, cod executabil, mânere deschise către obiecte de sistem, un context de securitate, un unic identificator de proces, variabile de mediu, o clasă de prioritate, dimensiuni minime și maxime ale setului de lucru și cel puțin un fir de execuție. Fiecare proces este început cu un singur fir, adesea numit fir principal, dar poate crea fire suplimentare din oricare dintre firele sale .
  3. Subiect : un subiect este o entitate dintr-un proces care poate fi programat pentru execuție. Toate firele unui proces își partajează spațiul de adrese virtuale și resursele sistemului. În plus, fiecare fir menține gestionare de excepție, o prioritate de planificare, stocare locală a firului, un identificator unic de fire și un set de structuri pe care sistemul le va folosi pentru a salva contextul firului până când acesta este programat. Contextul firului include setul de registre de mașini al firului, stiva de nucleu, un bloc de mediu de fir și o stivă de utilizator în spațiul de adrese al procesului firului. Firele pot avea, de asemenea, propriul context de securitate, care poate fi folosit pentru suplinirea clienților.

Lasă un răspuns

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