Skip to main content

Mi az ingyenes lista?

Az ingyenes lista egy olyan adatszerkezet, amely a számítógépes memóriahelyek címeit tárolja, amelyeket futó program használhat a dinamikus memóriaelosztás használatakor. A lista szükségessé válik, ha a programnak el kell osztaniatér a szabad memória területéről, az úgynevezett halom. Az ingyenes lista megvalósítása egyszerű összekapcsolt lista lehet, vagy összetettebb adatszerkezet lehet, mint példáulEgy fajta fa.Konkrét mennyiségű memóriát kell kérnie az alapul szolgáló operációs rendszertől. A felhasználható memóriablokkok helyét az ingyenes listában tárolják. Az elosztás sikere érdekében a kért memória mennyiségee vagy több ilyen blokkban elérhetőnek kell lennie. Ha egy megfelelő memória locatio mutatójan visszaadódik, a lista ezt az elemét eltávolítják.Visszatérés az ingyenes listába, ahol a következő alkalommal elérhető lesz, amikor a memória allokációja meghibásodik, mert a lista üres, vagy mivel nincsenek olyan nagymértékű memória blokkok, amelyek teljesítik aA program kérése.A lista áthalad, és az első blokk, amely elég nagy, visszatér. Ha a blokk több mint kétszerese a kért méretnek, akkor felére csökken, és a fel nem használt felet visszaadják a listához.Azok a területek, amelyeket soha nem lehet visszaadni a listára.Csak egy adott méretű nyitott blokkok. Ez azt jelenti, hogy amikor egy allokációs kérelem érkezik, a kérelem kitöltéséhez elég nagy blokkokat tartó blokkokkal konzultálnak, és a nyitott hely visszatér. Ha nem.Ingyenes blokkok, amelyek kevesebb, mint kétszer rendelkezésre állnak, rendelkezésre állnak, egy nagyobb blokk fel van osztva a követelmények teljesítéséhez.Vagy utalhat egy sokkal összetettebb típusú adatszerkezetre. Különböző típusú fajták, ha egyszerű és kiegyensúlyozottan tartják, elősegítheti a nyitott memória blokkok megtalálásának sebességét a bonyolítás rovásáraa forráskód. A kapcsolt lista lassabb lehet, mint egy speciális rendezési fa, de létrehozza a programotAz olyan kódex, amelyet sokkal könnyebben olvashatunk, hibakereshet aIngyenes lista és konszolidálja a szabad tereket úgy, hogy egymással szomszédosak legyenek. Ez a fragmentáció megelőzésére és a nagyobb memória blokkok kiosztását lehetővé teszi.