Er bestaat een veel-op-één-relatie tussen proces en programma, wat betekent dat één programma meerdere processen kan aanroepen of met andere woorden meerdere processen kunnen deel uitmaken van hetzelfde programma.
Vergelijkingstabel
Basis voor vergelijking | Programma | Werkwijze |
---|---|---|
basis- | Programma is een instructiepakket. | Wanneer een programma wordt uitgevoerd, staat dit bekend als proces. |
Natuur | Passief | Actief |
Levensduur | Langer | Beperkt |
Vereiste bronnen | Het programma wordt in een bestand op schijf opgeslagen en vereist geen andere bronnen. | Proces bevat bronnen zoals CPU, geheugenadres, schijf, I / O etc. |
Definitie van programma
Een programma kan in eenvoudige bewoordingen worden beschouwd als een systeemactiviteit. In batch-verwerkingssystemen worden dit taken uitvoeren terwijl het in een real-time besturingssysteem het taken of programma's wordt genoemd. Een gebruiker kan meerdere programma's uitvoeren waarbij het besturingssysteem zijn eigen interne geprogrammeerde activiteiten, zoals geheugenbeheer, met behulp van sommige technieken, mogelijk maakt.
Een programma is een passieve entiteit, bijvoorbeeld een bestand waarin een groep instructies is ondergebracht die moet worden uitgevoerd (uitvoerbaar bestand). Het wordt zo genoemd omdat het zelf geen actie uitvoert, het moet worden uitgevoerd om de acties die erin gespecificeerd zijn te realiseren.
De adresruimte van een programma bestaat uit de instructie, gegevens en stack. Stel dat P het programma is dat we schrijven, om de uitvoering van P te realiseren, wijst het besturingssysteem geheugen toe aan de adresruimte van P.
Definitie van proces
Een proces is een uitvoering van een programma. Het wordt beschouwd als een actieve entiteit en realiseert de acties die in een programma zijn gespecificeerd. Meerdere processen kunnen aan hetzelfde programma gerelateerd zijn. Het behandelt de activiteiten van het besturingssysteem via PCB (Process Control Block), dat een programmateller, stapel, toestand, enz. Bevat. De programmateller slaat de volgende reeks instructies op die later moet worden uitgevoerd.
Het heeft middelen nodig zoals verwerking, geheugen en I / O-middelen om managementtaken uit te voeren. Tijdens de uitvoering van een programma kan het een processor- of I / O-bewerking inschakelen waardoor een proces anders is dan een programma.
Laten we dit uit een voorbeeld begrijpen; we schrijven een C-programma. Tijdens het schrijven en opslaan van een programma in een bestand is het slechts een script en voert het geen actie uit, maar wanneer het wordt uitgevoerd, wordt het omgezet in een proces en dus is het proces dynamisch van aard. Het delen van bronnen tussen meerdere processen wordt gebruikt door de huidige machines, maar in werkelijkheid wordt een enkele processor verdeeld over verschillende processen.
Belangrijkste verschillen tussen programma en proces
- Een programma is een duidelijke groep geordende bewerkingen die moeten worden uitgevoerd. Aan de andere kant is een exemplaar van een programma dat wordt uitgevoerd een proces.
- De aard van het programma is passief aangezien het niets doet totdat het wordt uitgevoerd terwijl een proces dynamisch of actief van aard is, omdat het een voorbeeld is van het uitvoeren van het programma en het uitvoeren van de specifieke actie.
- Een programma heeft een langere levensduur omdat het in het geheugen wordt opgeslagen totdat het niet handmatig wordt verwijderd, terwijl een proces een kortere en beperkte levensduur heeft omdat het wordt beëindigd na voltooiing van de taak.
- De resourcevereiste is veel hoger in het geval van een proces; het kan verwerking, geheugen, I / O-middelen nodig hebben voor de succesvolle uitvoering. Een programma vereist daarentegen alleen geheugen voor opslag.
Conclusie
Programma en proces zijn relevant, maar zijn niet hetzelfde. Een programma is slechts een script dat op een schijf is opgeslagen of lijkt op de vorige fase van het proces. Integendeel, het proces is een gebeurtenis van een programma in uitvoering.