Was ist eine kostenlose Liste?

Eine kostenlose Liste ist eine Datenstruktur, die die Adressen der Computerspeicherorte enthält, die für ein laufendes Programm zur Verwendung dynamischer Speicherzuweisung verfügbar sind. Die Liste wird erforderlich, wenn ein Programm Platz aus einem Bereich des freien Speichers namens Heap zuweisen muss. Die Implementierung einer kostenlosen Liste kann eine einfache verlinkte Liste sein.

Wenn ein Programm Platz zum Speichern von Informationen während der Programmausführung erfordert, muss es eine bestimmte Menge an Speicher aus dem zugrunde liegenden Betriebssystem anfordern. Die Speicherorte von Speicherblöcken, die verwendet werden könnenDer Ort wird zurückgegeben, dieses Element der Liste wird entfernt.

Die einfachste Form der Speicherverwaltung wird als erstes Fit -System bezeichnet. Dieses System verwaltet eine einzige Liste kostenloser Speicherorte. Wenn eine Speicheranforderung gesendet wird, wird die Liste durchquert und der erste Block, der groß genug ist.ving fragmentierte Speicherbereiche, die möglicherweise nie in die Liste zurückgegeben werden.

Eine andere Form der Speicherverwaltung wird als Buddy -Allokationssystem bezeichnet. Im Gegensatz zum ersten Anpassungssystem hält die Buddy -Allokation mehrere kostenlose Listen, wobei jeder offene Blöcke von nur einer bestimmten Größe hält. Wenn eine Zuordnungsanforderung empfangen wird, wird die Liste, die Blöcke enthält, die gerade groß genug sind, um die Anfrage zu erfüllen, um die Anforderung zu erfüllen, und ein offener Ort, den Sie mit dem Aufteilen von zweimalen Blocks, die zweimal sind, die zweimalen Blocks sind, die zwei zweimal die Anzahl der zweifachen. Anforderungen.

Der Begriff "freie Liste" kann entweder auf eine einzige verknüpfte Liste von Speicheradressen verweisen oder auf eine viel komplexere Art von Datenstruktur verweisen. Verschiedene Arten von Sortierbäumen können bei einfachem und ausgewogenem Halten dazu beitragen, die Geschwindigkeit des Findens von offenen Speicherblöcken auf Kosten der Komplikation des Quellcode zu erhöhen. Eine verknüpfte Liste kann langsamer sein als eine Spezifizierung. Ein Speci -Speci -Speci kann langsamer sein als ein Spezifizier. Eine verknüpfte Liste kann langsamer sein als eine Spezifizierung. Ein Spezifizier kann langsamer sein als ein Speci -Speci -Speci -Baum.Sortierbaum, erstellt aber Programmiercode, der viel einfacher zu lesen, zu debuggen und zu ändern ist.

Einige Programmiersprachen und Betriebssysteme nutzen einen speziellen Mechanismus namens Müllsammlung. Dies ist ein Prozess, der die verschiedenen Einträge auf einer freien Liste aufnehmen und die freien Räume konsolidieren kann, damit sie zusammenhängend sind. Dies wirkt sich aus.

ANDERE SPRACHEN

War dieser Artikel hilfreich? Danke für die Rückmeldung Danke für die Rückmeldung

Wie können wir helfen? Wie können wir helfen?