Et andet vigtigt punkt, der differentierer proces og tråd, er, at processerne er isoleret med hinanden, mens tråde deler hukommelse eller ressourcer med hinanden.
Sammenligningstabel
Grundlag for sammenligning | Behandle | Tråd |
---|---|---|
Grundlæggende | Program i fuldførelse. | Letvægtsproces eller en del af det. |
Hukommelse deling | Helt isoleret og del ikke hukommelse. | Deler hukommelse med hinanden. |
Ressourceforbrug | Mere | Mindre |
Effektivitet | Mindre effektiv i forhold til processen i forbindelse med kommunikation. | Forbedrer effektiviteten i forbindelse med kommunikation. |
Tid kræves for oprettelsen | Mere | Mindre |
Kontekst skiftetid | Tager mere tid | Forbruger mindre tid. |
Usikker opsigelse | Resultat i tab af proces. | En tråd kan gendannes. |
Tid, der kræves for opsigelse | Mere | Mindre |
Definition af proces
Processen er udførelsen af et program og udfører de relevante handlinger angivet i et program, eller det er en eksekveringsenhed, hvor et program kører. Operativsystemet opretter, planlægger og afslutter processerne til brug af CPU'en. De andre processer, der er oprettet af hovedprocessen, er kendt som børneproces.
En procesoperation styres ved hjælp af PCB (Process Control Block) kan betragtes som procesens hjerne, som indeholder alle vigtige oplysninger vedrørende en proces som proces ID, prioritet, tilstand, PWS og indhold CPU-register .
PCB er også en kernelbaseret datastruktur, der bruger de tre slags funktioner, der er planlægning, afsendelse og kontekstspare.
- Planlægning - Det er en metode til at vælge procesens rækkefølge i enkle ord vælger processen, der skal udføres først i CPU'en.
- Dispatching - Det skaber et miljø for processen, der skal udføres.
- Kontekst gem - Denne funktion gemmer informationen om en proces, når den genoptages eller blokeres.
Der er visse stater, der indgår i en proceslivscyklus såsom klar, løbende, blokeret og afsluttet. Processtater bruges til at holde styr på procesaktiviteten på et øjeblik.
Fra programmørens synspunkt er processer mediet for at opnå samtidig gennemførelse af et program. Hovedprocessen i et samtidigt program skaber en børneproces. Hovedprocessen og børneprocessen skal interagere med hinanden for at nå et fælles mål.
Interleaving operationer af processer øger beregningshastigheden, når i / o-drift i en proces overlapper med en beregningsaktivitet i en anden proces.
Egenskaber af en proces:
- Oprettelse af hver proces omfatter systemopkald til hver proces separat.
- En proces er en isoleret eksekveringsenhed og deler ikke data og information.
- Processer anvender IPC (Inter-process kommunikation) mekanisme til kommunikation, hvilket signifikant øger antallet af systemopkald.
- Processhåndtering forbruger flere systemopkald.
- Hver proces har sin egen stack og hukommelse, instruktion, data og hukommelseskort.
Definition af tråd
Tråden er en programkørsel, der bruger procesressourcer til at udføre opgaven. Alle tråde inden for et enkelt program er logisk indeholdt i en proces. Kernen allokerer en stak og en trådkontrolblok (TCB) til hver tråd. Operativsystemet gemmer kun stakpegeren og CPU-tilstanden på tidspunktet for skift mellem trådene i den samme proces.
Tråd er implementeret på tre forskellige måder; Det drejer sig om kernetråder, tråde på brugerniveau, hybridtråde. Tråde kan have tre stater kørende, klar og blokeret; den omfatter kun beregningsstatus ikke ressourceallokering og kommunikationstilstand, hvilket reducerer omstillingsoverhead. Det forbedrer samtidigheden (parallelisme) og dermed øges hastigheden også.
Multithreading kommer også med nedslag, flere tråde skaber ikke kompleksitet, men samspillet mellem dem gør det.
En tråd skal have prioriteret egenskab, når der er flere tråde, der er aktive. Den tid, det bliver til henførsel til andre aktive tråde i samme proces, er angivet ved trådens prioritet.
Egenskaber for en tråd:
- Kun ét systemopkald kan oprette mere end en tråd (Letvægtsproces).
- Tråde deler data og information.
- Tråde deler undervisning, globale og høje regioner, men har sin egen individuelle stak og registre.
- Trådstyring bruger ingen eller færre systemopkald, da kommunikationen mellem tråde kan opnås ved hjælp af delt hukommelse.
- Processens isolationsegenskab øger overhead i form af ressourceforbrug.
Nøgleforskelle mellem proces og tråd
- Alle tråde i et program er logisk indeholdt i en proces.
- En proces er tungvægtet, men en tråd er letvægtet.
- Et program er en isoleret udførelsesenhed, mens tråden ikke er isoleret og deler hukommelse.
- En tråd kan ikke have en individuel eksistens; det er knyttet til en proces. På den anden side kan en proces eksistere individuelt.
- På tidspunktet for udløbet af en tråd kan den tilhørende stak udvindes, da hver tråd har sin egen stak. Hvis en proces dør, dør alle tråde derved, herunder processen.
Konklusion
Processer bruges til at opnå udførelse af programmer på samtidig og sekventiel måde. Mens en tråd er en programkørsel enhed, der bruger miljøet i processen, når mange tråde bruger miljøet i samme proces, skal de dele sin kode, data og ressourcer. Operativsystemet bruger denne kendsgerning til at reducere overhead og forbedre beregningen.