Alloa.
Ich hab mir schon ne ganze weile den Kopf zerbrochen wie man Speichverwaltung realisiert.
Also was die Funktion malloc im Grund macht und wie man das ganze Verwaltet.
Jedes mal eine neue Page von 4KB zu reservieren wäre zwar einfach, aber doch recht verschwenderich.
Ich unter Windows mal ein bisschen rumprobiert. Dort hab ich festgestellt, das vor jedem reserviertem kleinen Speicherbereich eine Art Header vorangestellt wird, der wohl Infos zu dem reserviertem Block gibt.
Ich hab den Header bisher noch nicht entschlüsseln können. Aber wichtig ist ja nunerstmal das es diesen gibt.
Nun müsste es aber trotzdem noch eine Art Tabelle geben, die sämtliche reservierten Speicherbereiche listet. Weil irgendwie muss die Funktion malloc ja auch feststellen können, wo bereits Speicher belegt ist und wo sie neuen reservieren kann.
Was ich im Grunde mal fragen wollte, ist wie IHR das bei euch mit der Speicherverwaltung gelöst habt.
Paging ist zwar auch Speicherverwaltung, setzt jedoch eigentlich an einem anderen Punkt an.
Ich hab mir schon ne ganze weile den Kopf zerbrochen wie man Speichverwaltung realisiert.
Also was die Funktion malloc im Grund macht und wie man das ganze Verwaltet.
Jedes mal eine neue Page von 4KB zu reservieren wäre zwar einfach, aber doch recht verschwenderich.
Ich unter Windows mal ein bisschen rumprobiert. Dort hab ich festgestellt, das vor jedem reserviertem kleinen Speicherbereich eine Art Header vorangestellt wird, der wohl Infos zu dem reserviertem Block gibt.
Ich hab den Header bisher noch nicht entschlüsseln können. Aber wichtig ist ja nunerstmal das es diesen gibt.
Nun müsste es aber trotzdem noch eine Art Tabelle geben, die sämtliche reservierten Speicherbereiche listet. Weil irgendwie muss die Funktion malloc ja auch feststellen können, wo bereits Speicher belegt ist und wo sie neuen reservieren kann.
Was ich im Grunde mal fragen wollte, ist wie IHR das bei euch mit der Speicherverwaltung gelöst habt.
Paging ist zwar auch Speicherverwaltung, setzt jedoch eigentlich an einem anderen Punkt an.

Übersicht
Wiki
Hilfe
Suche
Einloggen
Registrieren
Drucken


Gespeichert
Wobei das mit dem Header schon richtig ist...