Coalescing (datavetenskap)

Inom datavetenskap är koalescing en del av minneshantering där två intilliggande fria block av datorminne slås samman .

När ett program inte längre kräver vissa minnesblock kan dessa minnesblock frigöras . Utan sammansmältning förblir dessa minnesblock åtskilda från varandra i sin ursprungliga storlek, även om de ligger bredvid varandra. Om en efterföljande begäran om minne anger en minnesstorlek som inte kan uppfyllas med ett heltal av dessa (potentiellt olika stora) frigjorda block, kan dessa angränsande block av frigjort minne inte allokeras för denna begäran. Koalescing lindrar detta problem genom att ställa in de närliggande blocken av frigjort minne så att de är sammanhängande utan gränser, så att en del eller allt av det kan allokeras för begäran.

Bland andra tekniker används koalescering för att minska extern fragmentering , men är inte helt effektiv. Koalescering kan göras så snart blocken frigörs, eller så kan den skjutas upp till en tid senare (känd som uppskjuten koalescering), eller så kanske det inte görs alls.

Koalescens och relaterade tekniker som högkomprimering kan användas vid sophämtning .

Se även

externa länkar