Paging vs Swapping
Paging is een methode voor geheugenbeheer die door besturingssystemen wordt gebruikt. Met paging kan het hoofdgeheugen gegevens gebruiken die zich op een secundair opslagapparaat bevinden. Deze gegevens worden in het secundaire opslagapparaat opgeslagen als blokken van gelijke grootte, pagina's genoemd. Met paging kan het besturingssysteem gegevens gebruiken die niet in het hoofdgeheugen passen. Swappen is een term die wordt gebruikt om het verplaatsen van alle segmenten die tot een proces behoren tussen het hoofdgeheugen en een secundair opslagapparaat te beschrijven.
Wat is paging?
Paging is een methode voor geheugenbeheer die door besturingssystemen wordt gebruikt. Met paging kan het hoofdgeheugen gegevens gebruiken die zich op een secundair opslagapparaat bevinden. Deze gegevens worden op het secundaire opslagapparaat opgeslagen als blokken van dezelfde grootte, pagina's genoemd. Met paging kan het besturingssysteem gegevens gebruiken die niet in het hoofdgeheugen passen. Wanneer een programma toegang probeert te krijgen tot een pagina, wordt eerst in de paginatabel gecontroleerd of die pagina zich in het hoofdgeheugen bevindt. Paginatabel bevat details over waar de pagina's zijn opgeslagen. Als het niet in het hoofdgeheugen staat, wordt het een paginafout genoemd. Het besturingssysteem is verantwoordelijk voor het afhandelen van paginafouten zonder deze aan het programma te tonen. Het besturingssysteem zoekt eerst waar die specifieke pagina is opgeslagen in de secundaire opslag en brengt deze vervolgens naar een leeg paginaframe in het hoofdgeheugen. Vervolgens werkt het de paginatabel bij om aan te geven dat de nieuwe gegevens zich in het hoofdgeheugen bevinden en keert het de besturing terug naar het programma dat de pagina aanvankelijk opvroeg.
Wat is ruilen?
Swapping is het proces waarbij alle segmenten die bij een proces horen, worden verplaatst tussen het hoofdgeheugen en een secundair opslagapparaat. Ruilen vindt plaats onder zwaardere werkbelastingen. De kernel van het besturingssysteem zou alle geheugensegmenten die bij een proces horen, verplaatsen naar een gebied dat swapgebied wordt genoemd. Bij het selecteren van een proces om te swappen, zal het besturingssysteem een proces selecteren dat een tijdje niet actief zal worden. Wanneer het hoofdgeheugen voldoende ruimte heeft om het proces vast te houden, wordt het vanuit de swapruimte terug naar het hoofdgeheugen overgebracht, zodat de uitvoering ervan kan worden voortgezet.
Wat is het verschil tussen paging en swapping?
Bij paging worden blokken van gelijke grootte (pagina's genoemd) overgedragen tussen het hoofdgeheugen en een secundair opslagapparaat, terwijl bij swapping alle segmenten die bij een proces horen heen en weer worden verplaatst tussen het hoofdgeheugen en een secundair opslagapparaat. Omdat paginering het mogelijk maakt om pagina's te verplaatsen (het kan deel uitmaken van de adresruimte van een proces), is het flexibeler dan swappen. Aangezien paginering alleen pagina's verplaatst (in tegenstelling tot swapping, waarbij een heel proces wordt verplaatst), zou paginering het mogelijk maken dat er meer processen tegelijkertijd in het hoofdgeheugen aanwezig zijn, in vergelijking met een swapsysteem. Wisselen is geschikter bij zwaardere werklasten.