Als je hebt gemerkt dat je Mac wat meer veerkracht lijkt te hebben sinds je OS X Mavericks hebt geïnstalleerd, kan dat komen door de vooruitgang in geheugenbeheer en de terugkeer van geheugencompressie. De informatie in dit artikel is van toepassing op Macs met macOS Catalina (10.15) via OS X Mavericks (10.9).
Wijzigingen in hoe Mac het geheugen beheert
Met de release van OS X Mavericks veranderde Apple de manier waarop de Mac het geheugen beheerde. Met de toevoeging van geheugencompressie kan je Mac nu meer doen met minder geheugen, terwijl de prestaties behouden blijven of worden verbeterd. In oudere versies van OS X was het geheugengebruik opgebouwd rond een standaard geheugenbeheersysteem. Apps vroegen om een toewijzing van RAM, het systeem voldeed aan het verzoek en de apps gaven het RAM-geheugen terug toen ze het niet langer nodig hadden. Het besturingssysteem zorgde voor het grootste deel van het werk om bij te houden hoeveel RAM beschikbaar was en wie het gebruikte. Het besturingssysteem bedacht ook wat te doen als de benodigde hoeveelheid RAM niet beschikbaar was, wat nadelige effecten zou kunnen hebben op de prestaties van de Mac, aangezien het systeem probeerde gebruik te maken van virtueel RAM door ruimte op een SSD of harde schijf te wisselen.
Wat is gecomprimeerd geheugen?
Gecomprimeerd geheugen is niet iets nieuws of exclusief voor Apple. Computersystemen maken al lange tijd gebruik van verschillende vormen van geheugencompressie. Als je in het midden van de jaren ’80 en het begin van de jaren ’90 Macs gebruikte, herinner je je misschien producten zoals RAM Doubler van Connectix, die gegevens comprimeerde die in het RAM waren opgeslagen, waardoor de hoeveelheid vrije RAM die voor de Mac beschikbaar was, effectief werd vergroot. Hulpprogramma’s voor gecomprimeerd geheugen raakten uit de gratie toen computermakers en OS-ontwikkelaars betere geheugenbeheersystemen ontwikkelden. Tegelijkertijd daalden de geheugenprijzen. De andere factor waardoor geheugencompressiesystemen hun populariteit verloren, was het prestatieprobleem. Geheugencompressie-algoritmen vergden een flink deel van de verwerkingskracht. Hoewel ze je meer gedaan laten krijgen met minder fysiek RAM-geheugen, hadden ze de neiging om je computer vast te lopen wanneer ze het geheugen moesten comprimeren of decomprimeren. Geheugencompressie maakt een comeback, voornamelijk vanwege de komst van goedkope multiple core-processors. Wanneer de routines die worden gebruikt voor geheugencompressie kunnen worden overgedragen aan een van de vele processorkernen, zult u waarschijnlijk geen prestatieverlies merken wanneer geheugen moet worden gecomprimeerd of gedecomprimeerd. Het wordt slechts een achtergrondtaak.
Hoe gecomprimeerd geheugen werkt op een Mac
Geheugencompressie op de Mac verhoogt de prestaties van het besturingssysteem en de app door een beter beheer van RAM-bronnen mogelijk te maken. Het voorkomt of vermindert ook het gebruik van virtueel geheugen, het pagineren van gegevens van en naar de Mac-schijf. Met OS X Mavericks en hoger zoekt het besturingssysteem naar inactief geheugen, dat is geheugen dat momenteel niet actief wordt gebruikt, maar dat nog steeds gegevens bevat die door een app kunnen worden gebruikt. Dit inactieve geheugen comprimeert de gegevens die het bevat, zodat de gegevens minder geheugen in beslag nemen. Inactief geheugen kunnen apps zijn die op de achtergrond staan en niet worden gebruikt. Een voorbeeld is een tekstverwerker die open maar inactief is omdat u een pauze neemt en leest over gecomprimeerd geheugen. Terwijl je bezig bent met surfen op het web, comprimeert het besturingssysteem het geheugen van de tekstverwerker, waardoor RAM vrijkomt voor gebruik door andere apps.
Wanneer vindt geheugencompressie plaats?
Het compressieproces is niet altijd actief. In plaats daarvan controleert het besturingssysteem hoeveel vrije ruimte beschikbaar is in het RAM-geheugen. Als er een aanzienlijke hoeveelheid vrij geheugen is, vindt er geen compressie plaats, zelfs niet als er veel inactief geheugen is. Als het vrije geheugen op is, gaat het besturingssysteem op zoek naar inactief geheugen om te comprimeren. Compressie begint met de oudste gebruikte gegevens die in het geheugen zijn opgeslagen en werkt zich naar voren om ervoor te zorgen dat er voldoende vrij geheugen beschikbaar is. Wanneer de gegevens in een gecomprimeerd RAM-gebied nodig zijn, decomprimeert het besturingssysteem de gegevens on-the-fly en stelt deze beschikbaar aan de app die erom vraagt. Omdat de compressie- en decompressieroutines gelijktijdig op een van de processorkernen worden uitgevoerd, is het onwaarschijnlijk dat u prestatieverlies zult ondervinden tijdens de compressie of decompressie.
Beperkingen van geheugencompressie op Macs
Er zijn grenzen aan wat compressie kan bereiken. Als u op een bepaald moment doorgaat met het starten van apps of het gebruik van geheugenintensieve apps die RAM opslokken, heeft uw Mac niet genoeg vrije ruimte om optimaal te functioneren. Net als in het verleden begint het besturingssysteem inactieve RAM-gegevens om te wisselen naar de schijf van je Mac. Met geheugencompressie zal dit voor de meeste gebruikers echter zelden voorkomen. Zelfs als het besturingssysteem uiteindelijk het geheugen naar uw schijf verwisselt, profiteert het geheugenbeheersysteem van OS X van het gecomprimeerde inactieve geheugen door de gecomprimeerde gegevens naar schijfsegmenten van volledige lengte te schrijven om de prestaties te verbeteren en slijtage van SSD’s te verminderen.
Activiteitenmonitor en geheugencompressie
Apple leverde een handige tool, de Activity Monitor, die kon controleren hoe de Mac RAM gebruikte. Hoewel de Activity Monitor nog steeds beschikbaar is, hebben de geheugenmonitoringmogelijkheden een dramatische verandering ondergaan die lijkt op de manier waarop een Mac beter gebruik kan maken van RAM door het gebruik van gecomprimeerd geheugen. U kunt controleren hoeveel geheugen de Mac comprimeert met behulp van het tabblad Geheugen in Activiteitenweergave. Gecomprimeerd geheugen wordt weergegeven in de grafiek Geheugendruk, die aangeeft hoe actief het besturingssysteem is betrokken bij het comprimeren van RAM-gegevens. De grafiek verandert van groen (weinig druk) in geel (aanzienlijke druk), en uiteindelijk in rood, wanneer er niet genoeg RAM-ruimte is en het geheugen naar de schijf moet worden verwisseld.