Rozdiel medzi procesom a vláknom

Autor: Laura McKinney
Dátum Stvorenia: 1 Apríl 2021
Dátum Aktualizácie: 5 Smieť 2024
Anonim
Rozdiel medzi procesom a vláknom - Technológie
Rozdiel medzi procesom a vláknom - Technológie

Obsah


Proces a vlákno sú v podstate spojené. Proces je spustenie programu, zatiaľ čo vlákno je vykonanie programu riadeného prostredím procesu.

Ďalším dôležitým bodom, ktorý odlišuje proces a vlákno, je to, že procesy sú navzájom izolované, zatiaľ čo vlákna spolu zdieľajú pamäť alebo zdroje.

  1. Porovnávacia tabuľka
  2. definícia
  3. Kľúčové rozdiely
  4. záver

Porovnávacia tabuľka

Základ pre porovnanieproceszávit
základnéVykonaný program.Ľahký proces alebo jeho časť.
Zdieľanie pamäteÚplne izolované a nezdieľajú pamäť.Zdieľajú pamäť medzi sebou.
Spotreba zdrojovviacmenej
efektívnosťMenej účinný v porovnaní s postupom v komunikácii.Zvyšuje účinnosť v oblasti komunikácie.
Čas potrebný na vytvorenieviac
menej
Čas prepínaniaZaberie to viac času.Spotrebuje menej času.
Neisté ukončenieVýsledkom je strata procesu.Vlákno môže byť regenerované.
Čas potrebný na ukončenieviacmenej


Definícia procesu

Proces je vykonávanie programu a vykonáva príslušné akcie špecifikované v programe alebo je to jednotka vykonávania, v ktorej sa program spúšťa. Operačný systém vytvára, plánuje a ukončuje procesy na použitie CPU. Ostatné procesy vytvorené hlavným procesom sa nazývajú podradené procesy.

Procesné operácie sú riadené pomocou PCB (Process Control Block), ktorý možno považovať za mozog procesu, ktorý obsahuje všetky dôležité informácie týkajúce sa procesu, ako je ID procesu, priorita, stav, PWS a obsah CPU register. ,

PCB je tiež dátová štruktúra založená na jadre, ktorá využíva tri druhy funkcií, ktoré sú plánovanie, dispečing a ukladanie.

  • plánovanie - Je to spôsob výberu postupnosti procesu jednoduchými slovami, ktorý vyberie proces, ktorý sa musí vykonať ako prvý v CPU.
  • dispečing - Vytvára prostredie pre proces, ktorý sa má vykonať.
  • Con uložiť - Táto funkcia ukladá informácie týkajúce sa procesu, keď sa obnoví alebo zablokuje.

V životnom cykle procesu sú určité stavy, napríklad pripravenosť, prevádzka, blokovanie a ukončenie. Štáty procesu sa používajú na udržanie sledovania činnosti procesu v okamihu.


Z pohľadu programátora sú procesy médiom na dosiahnutie súbežného vykonania programu. Hlavný proces súbežného programu vytvára podriadený proces. Hlavný proces a podriadený proces musia vzájomne spolupracovať, aby sa dosiahol spoločný cieľ.

Prekladacie operácie procesov zvyšujú rýchlosť výpočtu, keď sa i / o operácia v jednom procese prekrýva s výpočtovou činnosťou v inom procese.

Vlastnosti procesu:

  • Vytvorenie každého procesu zahŕňa systémové volania pre každý proces osobitne.
  • Proces je izolovanou exekučnou entitou a nezdieľa údaje a informácie.
  • Procesy používajú na komunikáciu mechanizmus IPC (medziprocesová komunikácia), ktorý výrazne zvyšuje počet systémových volaní.
  • Riadenie procesov spotrebuje viac systémových volaní.
  • Každý proces má svoj vlastný zásobník a haldy, inštrukcie, dáta a mapu pamäte.

Definícia vlákna

Vlákno je spustenie programu, ktoré využíva procesné prostriedky na splnenie úlohy. Všetky vlákna v jednom programe sú logicky obsiahnuté v procese. Jadro prideľuje každému vláknu zásobník a riadiaci blok vlákna (TCB). Operačný systém ukladá iba ukazovateľ zásobníka a stav CPU v čase prepínania medzi vláknami toho istého procesu.

Vlákna sú implementované tromi rôznymi spôsobmi; sú to vlákna na úrovni jadra, vlákna na úrovni používateľa, hybridné vlákna. Vlákna môžu mať spustené tri stavy, pripravené a blokované; Zahŕňa to iba výpočtový stav, nie prideľovanie zdrojov a stav komunikácie, ktorý znižuje réžiu prepínania.Zvyšuje súbežnosť (rovnobežnosť), čím sa zvyšuje aj rýchlosť.

Multithreading tiež prichádza s demeritmi, viac vlákien nevytvára zložitosť, ale vzájomná interakcia medzi nimi.

Ak je aktívnych viac vlákien, vlákno musí mať vlastnosť priority. Čas, ktorý dostane na vykonanie zodpovedajúce iným aktívnym vláknam v tom istom procese, je určený prioritou vlákna.

Vlastnosti vlákna:

  • Iba jedno systémové volanie môže vytvoriť viac ako jedno vlákno (ľahký proces).
  • Vlákna zdieľajú údaje a informácie.
  • Vlákna zdieľajú inštrukcie, globálne oblasti a oblasti haldy, ale majú svoj vlastný jednotlivý zásobník a registre.
  • Správa vlákien nespotrebúva žiadne alebo menej systémových hovorov, pretože komunikácia medzi vláknami sa dá dosiahnuť pomocou zdieľanej pamäte.
  • Izolačná vlastnosť procesu zvyšuje režijné náklady, pokiaľ ide o spotrebu zdrojov.
  1. Všetky vlákna programu sú logicky obsiahnuté v procese.
  2. Proces je ťažký, ale vlákno je ľahké.
  3. Program je izolovaná jednotka vykonávania, zatiaľ čo vlákno nie je izolované a zdieľa pamäť.
  4. Vlákno nemôže mať individuálnu existenciu; je pripojený k procesu. Na druhej strane proces môže existovať individuálne.
  5. V čase vypršania platnosti vlákna by sa mohol jeho pridružený zväzok obnoviť, pretože každé vlákno má svoj vlastný zväzok. Naopak, ak proces zomrie, všetky vlákna zomrú vrátane procesu.

záver

Procesy sa používajú na dosiahnutie vykonávania programov súbežným a sekvenčným spôsobom. Zatiaľ čo vlákno je jednotka na vykonávanie programu, ktorá používa prostredie procesu, keď mnoho vlákien používa prostredie toho istého procesu, ktoré potrebujú na zdieľanie svojho kódu, údajov a zdrojov. Operačný systém používa túto skutočnosť na zníženie režijných nákladov a zlepšenie výpočtu.