Forskjell mellom tråd og prosess Forskjellen mellom

Anonim

Tråd vs prosess

Prosess

I en verden av dataprogrammering er en prosess en forekomst eller utførelse av et program. Hver prosess inneholder en programkode og eksisterende aktivitet. Det kan være mer enn en tråd som kan utgjøre en bestemt prosess. Instruksjoner kan utføres samtidig. Det vil imidlertid avhenge av at operativsystemet brukes.

Prosesser er i utgangspunktet store programmer. De bruker betydelige mengder minne. Derfor er de i stor grad avhengig av ressursene som er tilgjengelige for utførelse. Etter å ha sagt alle disse, er en prosess kjent som en "tungvektsprosess".

Hver prosess skjer på en annen minneplass. Derfor, hvis det er flere prosesser tilstede, er bytte mellom hver prosess tungt dyrt, da det vil ta tid fra hver minnetildeling for å bytte til en annen tildeling. Hver prosess har sitt eget adresserom, som kan gi store mengder forsyning.

En prosess er uavhengig av andre prosesser. Så, når en forelderprosess er endret, påvirker det ikke nødvendigvis andre prosesser. På grunn av denne oppførselen krever prosesser inter-prosesskommunikasjon, slik at de kan kommunisere med sine søsken.

Videre er prosesser, på grunn av deres mye mer komplekse natur, ikke skapt med letthet. Dette kan kreve noen duplisering av prosesser, typisk foreldreprosess, for å oppnå konstruksjon.

Tråd

Selv med minimale systemressurser kan tråder utføres samtidig for å oppnå en angitt oppgave. Årsaken er at en tråd bare er en utføringssekvens. Det er bare innenfor en prosess, og det er derfor også referert til som en "lettvektsprosess".

Det regnes som den minste delen av et program, da det er en uavhengig rekkefølge for utførelse i et program. Konteksten som bytter mellom tråder krever minimal mengde ressurs i motsetning til prosesser. Tråder, i hovedsak, deler adresseplasser og de er også lett opprettet.

Det skal også nevnes at endringer som gjøres i hovedtråden, kan påvirke oppførselen til de andre trådene i samme prosess. Tilsynelatende er kommunikasjon mellom tråder i samme prosess direkte og sømløs.

Sammendrag:

1. En prosess kan inneholde mer enn en tråd.

2. En prosess anses som "tungvekt" mens en tråd anses som "lett".

3. Prosessene er sterkt avhengige av systemressurser tilgjengelig mens tråder krever minimal mengde ressurs.

4. Endring av en hovedtråd kan påvirke påfølgende tråder, mens endringer i en overordnet prosess ikke nødvendigvis påvirker barnprosesser.

5. Tråder i en prosess kommuniserer direkte mens prosesser ikke kommuniserer så lett.

6. Tråder er enkle å lage mens prosesser ikke er så grei.