Linker, loader en uitvoerbare formaten
Bij herhaald malloc en free kan het voorkomen dat, ook al is het totaal aan vrij geheugen ruim voldoende, een groot gebied niet meer in één keer kan worden gereserveerd. Hoe heet dit verschijnsel?
- AGeheugenlek (memory leak)
- BFragmentatie
- CStack overflow
Antwoord en toelichting tonen
Antwoord: B. Fragmentatie
Bij herhaald reserveren en vrijgeven van gebieden van verschillende grootte raken kleine vrije stukken verspreid tussen gebruikte gebieden. Ook als het totaal aan vrije ruimte groot is, mislukt een grote reservering als er geen aaneengesloten groot vrij gebied is. Dit heet fragmentatie. Geheugenallocators beperken fragmentatie door per grootte te beheren en naburige vrije stukken samen te voegen. Bij embedded apparaten die lang blijven draaien, is hierop extra te letten.
Verder: nog 9 vragen over Linker, loader en uitvoerbare formaten