Niti proti procesu
Proces
V svetu računalniškega programiranja je postopek primerek ali izvedba programa. Vsak postopek vsebuje programsko kodo in obstoječo aktivnost. Lahko je več niti, ki lahko tvorijo določen postopek. Navodila se lahko izvajajo sočasno. Vendar bo odvisno od operacijskega sistema, ki se uporablja.
V bistvu so procesi zelo obsežni programi. Porabijo veliko pomnilnika. Zato so v veliki meri odvisni od virov, ki so na voljo za izvršbo. Po vsem tem je postopek znan kot "težak proces".
Vsak postopek se odvija na drugem pomnilniškem mestu. Če je prisotnih več procesov, je preklapljanje med posameznimi procesi zelo drago, saj bo za prehod na drugo dodelitev potreben čas od vsake dodelitve pomnilnika. Vsak postopek ima svoj naslovni prostor, ki lahko zajame velike količine ponudbe.
Proces je neodvisen od drugih procesov. Torej, ko je nadrejeni proces spremenjen, ne bo nujno vplival na druge procese. Zaradi tega vedenja procesi zahtevajo medprocesno komunikacijo, da lahko komunicirajo s sorojenci.
Poleg tega procesi zaradi svoje veliko bolj zapletene narave niso ustvarjeni z lahkoto. To lahko zahteva nekaj podvajanja procesov, običajno starševskega procesa, da se doseže konstrukcija.
Niti
Tudi z minimalnimi sistemskimi sredstvi je mogoče nitke izvajati sočasno, da dosežejo določeno nalogo. Razlog je v dejstvu, da je nit samo izvršilno zaporedje. Je zgolj znotraj procesa, zato ga imenujejo tudi "lahek postopek".
Velja za najmanjši del programa, saj gre za neodvisno zaporedno pot izvajanja znotraj programa. Kontekstni preklop med nitmi zahteva minimalne količine virov za razliko od procesov. Niti v bistvu delijo naslovne prostore in jih je prav tako enostavno ustvariti.
Prav tako je treba omeniti, da lahko spremembe, vnesene v glavno nit, vplivajo na vedenje drugih niti v istem postopku. Očitno je komunikacija med nitmi v istem procesu neposredna in brezhibna.
Povzetek:
1. Postopek lahko vsebuje več niti.
2. Postopek velja za "težko", medtem ko se nit obravnava kot "lahka".
3. Procesi so močno odvisni od razpoložljivih sistemskih virov, medtem ko teme zahtevajo minimalno količino virov.
4. Spreminjanje glavne niti lahko vpliva na naslednje teme, medtem ko spremembe v nadrejenem procesu ne bodo nujno vplivale na podrejene procese.
5. Niti v procesu komunicirajo neposredno, medtem ko procesi ne komunicirajo tako enostavno.
6. Niti so enostavne za ustvarjanje, medtem ko procesi niso tako enostavni.