Lõime ja protsessi erinevus

Niit vs protsess

Protsess

Arvutiprogrammeerimise maailmas on protsess programmi eksemplar või täitmine. Iga protsess sisaldab programmi koodi ja olemasolevat tegevust. Konkreetset protsessi võib moodustada mitu lõime. Juhiseid võib täita samaaegselt. Kuid see sõltub kasutatavast opsüsteemist.

Põhimõtteliselt on protsessid väga olulised programmid. Nad tarbivad märkimisväärselt palju mälu. Seetõttu sõltuvad nad suuresti täitmiseks kättesaadavatest ressurssidest. Kõike seda öeldes on protsess teadaolevalt „raskekaalu protsess”.

Iga protsess toimub erinevas mälukohas. Seega, kui protsesse on rohkem, on vahetamine iga protsessi vahel väga kallis, kuna iga mälujaotuse vahetamine teise jaotuse vastuvõtmiseks võtab aega. Igal protsessil on oma aadressiruum, mis võib tarnida märkimisväärses koguses.

Protsess on teistest protsessidest sõltumatu. Seega, kui emaprotsess on muudetud, ei mõjuta see tingimata teisi protsesse. Sellise käitumise tõttu vajavad protsessid protsessidevahelist suhtlust, et nad saaksid oma õdede-vendadega suhelda.

Lisaks ei looda protsesse nende keerukama olemuse tõttu kerge vaevaga. See võib ehituse saavutamiseks vajada protsesside, tavaliselt algprotsessi, dubleerimist.

Niit

Isegi minimaalsete süsteemiressurssidega on niite võimalik määratud ülesande saavutamiseks samaaegselt täita. Põhjuseks on asjaolu, et niit on ainult täitmisjada. See on lihtsalt protsessis ja seetõttu nimetatakse seda ka “kergeks protsessiks”.

Seda peetakse programmi väikseimaks osaks, kuna see on programmi sees iseseisev järjestikune täitmisteekond. Lõimede vahetamine kontekstis nõuab erinevalt protsessidest ressursse minimaalselt. Lõimed jagavad sisuliselt aadressiruume ja neid on ka lihtne luua.

Samuti tuleks mainida, et põhilõngul tehtud muudatused võivad mõjutada teiste lõimede käitumist samas protsessis. Ilmselt on sama protsessi niitide vaheline suhtlus otsene ja tõrgeteta.

Kokkuvõte:

1. Protsess võib sisaldada rohkem kui ühte lõime.
2. Protsessi peetakse „raskekaaluliseks”, niiti aga „kergeks”.
3. Protsessid sõltuvad suuresti saadaolevatest süsteemiressurssidest, niidid vajavad aga ressursse minimaalselt.
4. Põhilõime muutmine võib mõjutada järgmisi lõime, samas kui põhiprotsessi muudatused ei mõjuta tingimata järelprotsesse.
5. Protsessis olevad niidid suhtlevad otse, samas kui protsessid ei suhtle nii lihtsalt.
6. Lõime on lihtne luua, samas kui protsessid pole nii sirged.