Co je to bezplatný seznam?

Bezplatný seznam je datová struktura, která drží adresy míst pro počítačovou paměť, která jsou k dispozici pro použití s ​​běžícím programem při použití dynamické přidělení paměti. Seznam je nezbytný, když program musí přidělit prostor z oblasti volné paměti zvané halda. Implementace bezplatného seznamu může být propojenějším seznamem, který je třeba složitá datová struktura, jako je nejvíce třídě.

Když program vyžaduje prostor pro ukládání informací při provádění programu, musí požadovat konkrétní množství paměti z podkladového operačního systému. Umístění paměťových bloků, které lze využít, je uloženo ve volném seznamu. Aby byla alokace úspěšná, musí být dostupné množství požadované paměti k dispozici v jednom nebo více z těchto bloků.Je vráceno umístění, tento prvek seznamu je odstraněn.

Po provedení programu pomocí paměti to může de-přidělit. To zahrnuje předání ukazatele do paměťového bloku zpět do bezplatného seznamu, kde se příště bude k dispozici přidělení. 4Fragmentované paměťové oblasti ving, které by nikdy nebyly vráceny do seznamu.

Odlišná forma správy paměti se nazývá systém přidělování kamarádů. Na rozdíl od prvního systému fit, alokace kamarádů, udržuje několik volných seznamů, z nichž každý drží otevřené bloky pouze jedné konkrétní velikosti. To znamená, že když je přijata žádost o přidělování, je to přijato, že je k dispozici, a je vraceno, a je vráceno otevřené polohy. Požadavky.

Termín „seznam volných seznamů“ se může odkazovat buď na jeden propojený seznam paměťových adres, nebo může odkazovat na mnohem složitější typ datové struktury. Různé typy tříd, pokud jsou udržovány jednoduché a vyvážené, mohou pomoci zvýšit rychlost nalezení otevřených paměťových bloků na nákladyalizovaný strom třídění, ale vytváří programovací kód, který je mnohem snazší číst, ladit a upravit.

Některé programovací jazyky a operační systémy využívají speciální mechanismus s názvem Sběr odpadu. Toto je proces, který může pomoci při přidělování různých položek na volný seznam a konsolidovat volné prostory tak, aby byly sousedící. To má za následek prevenci fragmentace a umožnění přidělení větších bloků paměti.

JINÉ JAZYKY

Pomohl vám tento článek? Děkuji za zpětnou vazbu Děkuji za zpětnou vazbu

Jak můžeme pomoci? Jak můžeme pomoci?