Hallo Leute,
ich bin ja momentan dabei, den Code fürs Paging zu überarbeiten. Nun wird nicht merh von 0 bis zum ende des Kernels gemappt, sondern nur der Kernel, VGA Part, usw.
Nun nutze ich den Debugger von Bochs, um zu schauen, wie das ganze gemappt wurde, wo folgende Ausgabe hervorgegangen ist:
0x000b8000-0x000b8fff -> 0x000b8000-0x000b8fff
0x00100000-0x0010ffff -> 0x00100000-0x0010ffff
0x00112000-0x0011bfff -> 0x00112000-0x0011bfff
0xa0000000-0xa0000fff -> 0x00002000-0x00002fff
0xa0001000-0xa009bfff -> 0x00004000-0x0009efff
0xa009c000-0xa00b2fff -> 0x000a1000-0x000b7fff
0xa00b3000-0xa00e1fff -> 0x000b9000-0x000e7fff
0xa00e2000-0xa00e3fff -> 0x00110000-0x00111fff
0xa00e4000-0xa0100fff -> 0x0011c000-0x00138fff
Ich vermute ja mal, dass die verkorkste Ausgabe deswegen ist, da die physikalischen Speicherseiten nicht aneinanderliegen (die des Heaps, also ab 0xa0000000)... Sollte behoben sein, wenn ich die Speicherseiten nehme, die hinter dem Kernel liegen
Meine Frage ist nun folgende:
Gibt es die Möglichkeit, den Bochs Debugger so zu nutzen wie den "Debugger" von qemu? Dort habe ich die Möflichkeit, zu egal welcher Laufzeit mir die mappings oder die Register anzeigen zu lassen. Kann man dies irgendwie über die Konfigurationsdatei, die Bochs benötigt einstellen? Es ist nämlich mühselig, immer ein PANIC einzubauen und das dann per lb als Haltepunkt anzugeben.