Wanneer je bijvoorbeeld FireFox gebruikt dan word er één en ander in het geheugen geladen. Maar als je FireFox dan afsluit geeft hij niet plots minder geheugengebruik aan. FireFox staat nog steeds in het geheugen. Start je FireFox nu weer op, dan gaat hij simpel weg eerst in het geheugen gaan kijken en dan pas op de harde schijf. (Eigenlijk gaat hij eerst in de kleinere geheugens kijken die ook wel cache genoemd word. Dat zijn mini geheugens die dichter (letterlijk) bij de processor zitten en de meest recente gegevens bevatten. Dan pas gaat hij in het Ram kijken.)
Als je FireFox dan langere tijd niet meer gebruikt en een ander programma opstart zal hij dan die data "overschrijven" met de nieuwe gegevens. Wanneer dat gebeurd is en je zou later of na een heropstart FireFox weer openen dan zal dit 'langer' duren omdat hij dus op de harde schijf moet gaan zoeken.
Ook een gedeelte van het geheugen word gereserveerd voor het systeem zelf, en daar krijgen de "gewone" programma's geen toegang toe.
@Bloom, ook al trek je de buffer eraf dan klopt het nog niet. En bij de swap komt het wel overeen.
Wat ik denk is dus dat in systeemmonitor het geheugen gebruik staat waarmee de openstaande programma's daadwerkelijk werken en dat je met 'top' het "beschreven" geheugen te zien krijgt. Dus nadat je FireFox (of ander progje) sluit verminderd het geheugen gebruik in systeemmonitor maar blijft het hetzelfde in top. Daarmee aangevend dat FireFox er dus nog altijd in staat. Hij reserveerd nog een beetje geheugen als vrij om te kunnen schrijven van schijf. Moet hij meer gebruiken dan word andere (de oudste) data weggeschreven naar de swap en overschreven door de nieuwe data.
(Ter info:
Als in een script fouten zitten kan je wel eens een segmentatiefout krijgen. Dat is dan als er een "gewoon" programma geheugenruimte toe wil kennen dat voor het systeem gereserveerd is.)