Part 3 Flashcards
NT subsysteem protected & priviliged? + kernelmodus
• User mode
o Omdat het een deel van het geheugen is die afgeschermd wordt. Users mogen namelijk sommige delen van het geheugen niet kunnen bereiken.
o Sommige instructies mogen NIET worden uitgevoerd.
• Kernal mode
o De monitor werkt in een systeem mode –> Kernal mode
o Privileged instructies worden hier uitgevoerd die dan protected areas van het geheugen kunnen bereiken
Wat zijn de vereisten van een OS in functie van de processen?
- uitvoering van meerdere processen toestaan
- bronnen toewijzen aan elk proces
- bronnen beschermen tov andere processen.
- Interproces synchronisatie ondersteunen
(Mechanisme voor processen om te communiceren en hun acties te synchroniseren.)
Welke gebeurtenissen kunnen de creatie van een proces veroorzaken?
- Batchtaak:
het OS ontvangt een job besturings opdracht voor een batchtaak vanuit een magneetband of schijf. - Interactieve aanmelding:
een gebruiker meldt zich aan op het systeem.
*OS dienst:
een uitvoering van een functie op het verzoek van een gebruikersprogramma, zoals afdrukken.
- Bestaand proces:
parent creëert een child process
Wanneer wordt een proces beëindigt?
- Normale voltooiing:
beëindigd omdat de uitvoering voltooid is. - Tijd verstreken:
het proces heeft langer dan de maximale tijd gewacht op het optreden van een event. - Onvoldoende geheugen beschikbaar
- Overtreding geheugengegevens:
probeert toegang te krijgen tot geheugenlocatie waar het geen toegang mag tot hebben. - Beschermingsfout:
het proces probeert een voorziening of bestand te gebruiken dat het niet mag gebruiken of het probeert deze op onjuiste manier te gebruiken. - Rekenkundige fout:
het proces probeert een verboden berekening te maken, zoals delen door nul. - I/O fout
- Ongeldige instructie
- Geprivilegieerde instructie: het proces probeert een instructie uit te voeren die beschermd is.
- Onjuiste gebruik van gegevens
- Ingreep van de gebruiker of het OS:
bijvoorbeeld een deadlock. - Beëindiging van het ouderproces:
automatisch het kindproces stoppen. - Verzoek van het ouderproces:
het ouderproces heeft het recht om zijn kinderprocessen te stoppen.
Bespreek het procesmodel met vijf toestanden + tekening
- New:
nog niet is toegelaten tot de pool van uitvoerbare processen door OS
nieuw proces nog niet in het hoofdgeheugen geladen, hoewel het procesbesturingsblok is aangemaakt. - Ready:
Een proces dat bereid is om uit te voeren als het de kans krijgt. - Running:
Het proces dat momenteel wordt uitgevoerd - Blocked/Waiting: Een proces dat niet kan uitvoeren totdat een bepaalde gebeurtenis plaatsvindt,
zoals de voltooiing van een I/O operatie. - Exit: Een proces dat is vrijgegeven uit de pool van uitvoerbare processen door het besturingssysteem, hetzij omdat het is gestopt, hetzij omdat het om een of andere reden is afgebroken.
Waarom is er een overgang van het procesmodel met vijf toestanden naar het model met zeven toestanden + tekening
Onderbroken Processen:
Processor is sneller dan I/O dus alle processen kunnen wachten op I/O
Wissel deze processen naar tweede schijf om meer geheugen vrij te maken en de processor te gebruiken voor meer processen
Geblokkeerde status wordt suspend status als ze naar schijf worden geswapt
Two new states
Blocked/Suspend
Ready/Suspend
New naar Ready/Suspend
ready queue in main memory (size is limited)
geswapped als geen plaats (2ndary memory)
Zonder suspend:
vaak onvoldoende ruimte in het hoofdgeheugen voor een nieuw proces, vandaar het gebruik van de (New Ready/Suspend) overgang.
Ready Proces
Het proces is klaar om te beginnen en is aan het wachten om een processer assigned te krijgen
De short term scheduler dispatched het aan de processer en wordt running.
Running Proces
Wanneer het begint met execution, is het running
Finished:
terminated (geen interruption & properly executed)
Interrupt:
wanneer wordt uitgevoerd, ander proces komt met hogere priority. Proces gaat terug naar ready state
I/O op of Event wait:
heeft een event of io nodig om door te gaan
Blocked/waiting process
Wachten op een event om voor te komen. Vraagt signaal van ergens
Als het is gecompleted. Gaat het terug naar de ready state, klaar om executed te worden
Bespreek de procestoestanden waarin de residente monitor, de processen van de kernel en de user processen kunnen terechtkomen, hoe en wanneer?
Processen van de kernel of residente monitor kunnen niet onderbroken worden. Eens ze gestart zijn worde ze dus tot het einde uitgevoerd. User processen daarentegen kunnen wel onderbroken worden.
Gebruiker draait - Proces draait in gebruikersmodus, wat betekent dat het een gebruikersproces is.
Kernel draait - geeft aan dat het proces een kernelproces is dat in kernelmodus draait.