Autor Thema: Speichermanagement für Anfänger  (Gelesen 2127 mal)

DaCodaaa

  • Gast
Gespeichert
« am: 05. September 2009, 15:46 »
Hi,

Jetzt wo ich mit der Tastatur vorerst fertig bin wollte ich mich dem Speichermanagement(malloc und free) widmen.
Hab mich auch schon ein bisschen eingelesen.
Das Problem ist jetzt, dass ich vom Bios eine Bitmap holen wollte, aber ja durch Grub ja schon im Pmode bin.
Meine Frage ist also: Wie kann ich im Pmode Bios funktionen,welche ja RM sind, aufrufen oder gibt es Alternativen, mit denen man auch den ganzen Speicher mappen kann?

kevin

  • Administrator
  • Beiträge: 2 767
    • Profil anzeigen
Gespeichert
« Antwort #1 am: 05. September 2009, 15:53 »
Wenn du die Speicherbitmap haben willst, dann kannst du die ganz einfach aus den Multiboot-Strukturen holen (siehe Wikieintrag für Multiboot).

Und malloc/free ist nicht die Ebene, auf der du ansetzen willst. Zuerst einmal wird Speicher üblicherweise in Seiten von 4 Kilobytes verwaltet. malloc baut dann darauf auf.
Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end.

DaCodaaa

  • Gast
Gespeichert
« Antwort #2 am: 05. September 2009, 17:10 »
Ok hab mich jetzt durch das Wiki gewühlt und einen link zu dem Quellcode von dlmalloc gefunden.
kann ich den Code auf mein System Portieren, oder ist das überhaupt ratsam und wo finde ich eine Anleitung, wie man mit der Memorymap von Grub etwas macht(quasi was drinsteht).

kevin

  • Administrator
  • Beiträge: 2 767
    • Profil anzeigen
Gespeichert
« Antwort #3 am: 05. September 2009, 17:27 »
Ich hab doch den Wikiartikel verlinkt, wo drinsteht, wie die Tabelle aufgebaut ist.

dlmalloc kannst du verwenden, aber der will natürlich auch erstmal eine Speicherverwaltung haben, auf die er aufsetzen kann. Wie gesagt, malloc ist jetzt noch nicht an der Reihe, sondern eine seitenbasierte physische Speicherverwaltung.
Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end.

 

Einloggen