Part 4 Flashcards

1
Q

Wat zijn geheugentabellen, welke soorten geheugentabellen zijn er?

A
  • Geheugentabellen worden gebruikt om zowel het hoofdgeheugen als het secundaire geheugen bij te houden.
  • Moeten deze informatie bevatten:
    o Toewijzing van hoofdgeheugen aan processen
    o Toewijzing van secundair geheugen aan processen
    o Beveiligingsattributen voor toegang tot gedeelde geheugengebieden
    o Informatie die nodig is om virtueel geheugen te beheren

Soorten:

  • I/O tables => wordt door het OS gebruikt om I/O toestellen en kanalen van de computer te beheren
  • File tables => deze worden voorzien van informatie zoals bestaan van een bestand, locatie op het secundaire geheugen, de huidige status en nog andere attributen
  • Process tables => om processen te kunnen beheren moet het OS volgende details van de processen weten: huidige status, proces ID, locatie in het geheugen, …
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Met welke aandachtspunten moet rekening gehouden worden bij het ontwerpen van besturingsstructuren voor OS?

A
  • Betrouwbaarheid & robuustheid
  • Efficiëntie en gemak
  • Mogelijkheid om te evolueren:
    • Patches => bug die men herstelt
    • Updates => iets meer dan een patch
    • Nieuwe of betere drivers
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Process attributen, welke categorieën?

A

Procesattributen:

  • Identifier => in windows is dit zijn naam, in Unix is het zijn naam gelinkt aan Inodenummer
  • State => Running(krijgt timeslice op processor waar hij instructies mag uitvoeren), wachten op I/O, Time-out(klaar)
  • Prioriteit => Windows heeft er 22 waarvan eerste 6 gereserveerd voor kernel-taken.
  • Program counter => register op processor dat verwijst naar de volgende uit te voeren instructie
  • Memory pointers
  • Context data
  • I/O status informatie
  • Accounting informatie => taakbeheer

Categorieën:

  • Proces identificatie
  • Proces status informatie
  • Proces controle informatie
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Wat is het Process Control Block?

A

Een procesbesturingsblok (PCB) is een gegevensstructuur die door computerbesturingssystemen wordt gebruikt om alle informatie over een proces op te slaan. Het is ook bekend als een procesdescriptor. Wanneer een proces wordt aangemaakt (geïnitialiseerd of geïnstalleerd), maakt het besturingssysteem een overeenkomstig procescontroleblok aan.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Welke zijn de modi van procesuitvoering, waarom worden die modi gebruikt en hoe weet de processor de modus van uitvoering?

A
  • Gebruikersmodus (user mode):
  • minder geprivilegieerde modus
  • gebruikersprogramma’s worden meestal in deze modus uitgevoerd
  • Systeemmodus (system mode):
  • meer geprivilegieerde modus
  • kernel van het besturingssysteem

De processor weet de modus van uitvoering door het Program Status Word. Dit register duidt de uitvoeringsmodus aan.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Wat is relocatie?

A

Relocatie is beter bekend als hertoewijzen.
Dit is een proces swappen naar het hoofdgeheugen. Hierbij keert het proces niet terug naar het oorspronkelijk adres, maar naar een nieuw fysisch adres. Nieuw fysisch adres is het relatief adres samen met de offset.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Waarom is er naast een fysieke indeling een logische indeling van het geheugen?

A

Omdat de fysische indeling niet kan corresponderen met de manier waarop programma’s zijn gemaakt. De meeste programma’s zijn georganiseerd in modules. Wanneer het OS en de hardware kunnen werken met user programs en data in de vorm van modules, dan krijg je volgende voordelen:

  • Modules kunnen onafhankelijk geschreven worden en gecompileerd.
  • Modules kunnen verscheidene graden van bescherming bevatten (read-only, execute-only).
  • Het is mogelijk mechanisme te introduceren waarbij modules kunnen gedeeld worden onder de processen.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Bespreek geheugenindeling met vaste partities + tekening

A

Bij vaste partities zijn er 2 soorten indelingen:

  • partities met gelijke grootte; (equal-size partition).
  • partities met ongelijke grootte; (unequal-size partition)

Er zijn twee problemen met vaste partities:

  • Het aantal actieve processen is beperkt door het aantal partities.
  • Een groot aantal kleine processen zal de geheugenruimte niet optimaal benutten, waardoor er interne fragmentatie ontstaat.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Welke plaatsingen algoritmes worden gebruikt bij geheugenindeling met vaste partities?

A
  • Equal-size: Stel een proces is 1 Mega groot, dan wordt deze volledige partitie van 8 Mega gereserveerd voor dit ene proces. Dit noemt men fragmentatie. Deze 8 Mega komt terug vrij wanneer het proces gedaan is. Dit systeem is dus niet goed en wordt niet meer gebruikt.
  • Unequal-size: We hebben terug 64 Mega, met 8 partities van 2,4,6,8,8,12,16 Mega. Hierbij laadt je elk proces in de beste partitie. Stel je hebt nu een proces van 1 mega, dan zal je deze laden in de kleinst passende partitie, partitie met een grootte van 2 dus. Je zal nog altijd interne fragmentatie hebben, maar dit is niet 7, maar 1 meer nu wat veel minder is. Je krijgt deze 1 Mega terug wanneer het proces deze partitie verlaat. Het probleem hierbij is dat je een wachtrij gaat maken voor elke partitie. Dit systeem is al beter, maar ook nog niet goed en ook niet meer gebruikt.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Bespreek geheugenindeling met dynamische partities

A

Dynamische partitioneren gebruikt een variabel aantal partities met een variabele grootte.
Wanneer een proces binnenkomt krijgt het exact zoveel geheugen toegewezen als nodig. Wanneer het proces ten einde is, komt deze ruimte in het geheugen weer vrij en kunnen andere processen die plaats inpalmen.
In het begin verloopt deze methode goed maar verloop van tijd zit je met externe fragmentatie.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Wat is het verschil tussen het best-fit, first-fit en next-fit plaatsingsalgorithme voor geheugentoewijzing?

A

Dit zijn 3 algoritmes om een proces toe te wijzen aan het geheugen.

  • Best-fit:
  • Keuze van het blok dat het dichtst de gevraagde ruimte benadert
  • Statistisch gezien de minst goede
  • Gezien kleinste blok gebruikt, blijft er altijd zeer kleine fragmentatie over. Er zal dus meer compactie moeten gebeuren
  • First-fit:
  • Scanning start vooraan het MM en de eerste passende vrije blok wordt gekozen.
  • Snelste methode
  • Eerste deel van het geheugen wordt zwaarder belast dan de andere gedeeltes.
  • Wanneer er veel processen geladen zijn, is er performantie verlies.
  • Next-fit:
  • Scanning start vanaf de plaats waar de vorige keer toegewezen werd.
  • Meestal zullen de grootste blokken achteraan gevonden worden
  • Ontstaan van fragmentatie
  • Fragmentatie is noodzakelijk
  • Moeilijker inter-procescommunicatie
How well did you know this?
1
Not at all
2
3
4
5
Perfectly