Aanbevolen, 2024

Editor'S Choice

Verschil tussen virtueel en cachegeheugen in OS

Geheugen is een hardwareapparaat dat wordt gebruikt om de informatie tijdelijk of permanent op te slaan. In dit artikel heb ik de verschillen tussen virtueel en cachegeheugen besproken. Een cachegeheugen is een supersnel geheugen dat wordt gebruikt om de toegangstijd voor gegevens te verminderen. Aan de andere kant is virtueel geheugen niet bepaald een fysiek geheugen, maar een techniek die de capaciteit van het hoofdgeheugen voorbij zijn limiet uitbreidt.

Het belangrijkste verschil tussen virtueel geheugen en het cachegeheugen is dat een virtueel geheugen een gebruiker toestaat programma's uit te voeren die groter zijn dan het hoofdgeheugen, terwijl cachegeheugen een snellere toegang mogelijk maakt tot de gegevens die recent zijn gebruikt. We zullen wat meer verschillen bespreken met behulp van de onderstaande vergelijkingsgrafiek.

Vergelijkingstabel

Basis voor vergelijkingVirtueel geheugenGeheugen in cache
basis-Virtueel geheugen vergroot de capaciteit van het hoofdgeheugen voor de gebruiker.Cachegeheugen maakt de gegevenstoegangssnelheid van de CPU vast.
NatuurVirtueel geheugen is techniek.Cachegeheugen is een opslageenheid.
FunctieVirtueel geheugen maakt uitvoering van het programma mogelijk dat groter is dan het hoofdgeheugen.Cachegeheugen slaat de kopieën op van originele gegevens die recent zijn gebruikt.
Geheugen managementVirtueel geheugen wordt beheerd door het besturingssysteem.Cachegeheugen wordt volledig beheerd door de hardware.
GrootteVirtueel geheugen is veel groter dan het geheugen in de cache.Cachegeheugen heeft begrensde grootte.
In kaart brengenVirtueel geheugen vereist mappingstructuren om virtueel adres naar fysiek adres te mappen.Geen toewijzingsstructuren zijn als zodanig vereist in een cachegeheugen.

Definitie van virtueel geheugen

Virtueel geheugen is niet echt een fysiek geheugen van een computer, maar het is een techniek die de uitvoering van een groot programma mogelijk maakt dat mogelijk niet volledig in het hoofdgeheugen wordt geplaatst . Hiermee kan de programmeur de programma's uitvoeren die groter zijn dan het hoofdgeheugen.

Laten we nu eens begrijpen hoe het virtuele geheugen werkt? Het programma heeft een virtueel geheugenadres dat is opgedeeld in een aantal pagina's . Het hoofdgeheugen is ook verdeeld in een aantal pagina's . Nu, zoals we kunnen zien, is het virtuele adres van een programma groter dan het beschikbare hoofdgeheugen. Dus geheugenkaarten worden gebruikt om het virtuele adres in het hoofdgeheugen in te delen.

Pagina 0, 1, 2, wordt in het hoofdgeheugen in kaart gebracht en het hoofdgeheugen vult vol. Nu, wanneer pagina 3 van het virtuele geheugen ruimte vraagt ​​in het hoofdgeheugen, wordt de oudste geplaatste pagina, dwz pagina 0, naar de harde schijf overgebracht en evacueert de plaats voor pagina 3, in het hoofdgeheugen en het proces gaat verder. Als de pagina 0 opnieuw nodig is, wordt de oudste geplaatste pagina op dat moment opnieuw naar de harde schijf overgebracht en wordt de plaats voor pagina 0.

Als de twee programma's dezelfde gegevens nodig hebben, die in het hoofdgeheugen zijn geplaatst, kan de geheugentoewijzingseenheid beide programma's dezelfde adresruimte in het hoofdgeheugen delen waar de gedeelde gegevens worden opgeslagen. Dit maakt het delen van bestanden eenvoudig.

De voordelen van virtueel geheugen zijn:

  • De programma's worden niet langer beperkt door de limiet van het hoofdgeheugen.
  • Virtueel geheugen verhoogt de mate van multiprogrammering.
  • Verhoogt het CPU-gebruik.
  • Hoe minder I / O-eenheid nodig is om programma's in het geheugen te laden of te verwisselen.

Maar er is een nadeel van virtueel geheugen, het plaatsen van meer pagina's van een programma op de harde schijf zal de prestaties vertragen omdat toegang tot de gegevens vanaf de harde schijf meer tijd kost in vergelijking met toegang tot gegevens uit het hoofdgeheugen.

Definitie van Cache Memory

In tegenstelling tot virtueel geheugen is Cache een opslagapparaat dat op de processor zelf is geïmplementeerd. Het bevat de kopieën van originele gegevens die recent zijn geopend. De originele gegevens kunnen in het hoofdgeheugen of in een secundair geheugen worden geplaatst. Het cachegeheugen maakt de toegangssnelheid van gegevens vast, maar hoe? Laten we het begrijpen.

We kunnen zeggen dat de toegangssnelheid van de CPU beperkt is tot de toegangssnelheid van het hoofdgeheugen . Wanneer een programma door de processor moet worden uitgevoerd, haalt het het uit het hoofdgeheugen. Als een kopie van het programma al aanwezig is in de cache die op de processor is geïmplementeerd. Het proces zou sneller toegang kunnen krijgen tot die gegevens, wat zal resulteren in een snellere uitvoering.

Belangrijkste verschillen tussen virtueel en cachegeheugen

  1. Virtueel geheugen vergroot de capaciteit van het hoofdgeheugen praktisch voor de gebruiker. Het cachegeheugen maakt echter de toegang tot gegevens sneller voor de CPU.
  2. Cache is een geheugenopslageenheid terwijl het virtuele geheugen een techniek is .
  3. Virtueel geheugen maakt de uitvoeringen van het programma mogelijk die groter zijn dan het hoofdgeheugen. Aan de andere kant slaat het cachegeheugen de kopieën op van originele gegevens die recentelijk werden gebruikt.
  4. Virtueel geheugenbeheer wordt uitgevoerd door het besturingssysteem . Aan de andere kant wordt het beheer van het cachegeheugen door de hardware gedaan .
  5. Virtueel geheugen is veel groter dan het geheugen in de cache.
  6. Virtuele geheugentechniek vereist dat de mappingstructuren virtueel adres toewijzen aan fysiek adres, terwijl cachegeheugen geen mappingstructuren vereist.

Conclusie:

Het virtuele geheugen is een techniek om de capaciteit van het hoofdgeheugen praktisch voor de gebruikers uit te breiden. Het cachegeheugen is een opslageenheid die de onlangs geopende gegevens opslaat, waardoor de CPU er sneller toegang toe heeft.

Top