Page 1 of 1

Page Fault by MM of JamesM

Posted: Thu Jul 03, 2008 2:17 pm
by PHPnerd
Hi,

i used the code of JamesM tutorials to make a memory manager. After creating the heap, the memory manager doesnt work anymore.
The fault occurs with initializing paging, by creating kernel hep -> place_ordered_array();

A screenshot is attached.

The code is the same as in his tutorials.

Can someone help me?

PHPnerd

Re: Page Fault by MM of JamesM

Posted: Thu Jul 03, 2008 4:18 pm
by blound
if you want help you should post whatever logs QEMU can give you ( similar to boch's register dump, memory contents, plus disasm of the code thats breaking, also if qemu has something like 'info tab' in bochs you should break right before the fault and use it to print your virtual -> physical lookups )

pasting just generic prints and a fault is not going to let people help you much

Re: Page Fault by MM of JamesM

Posted: Fri Jul 04, 2008 3:22 am
by JamesM
The page fault is caused by an instruction fetch from 0x1215512. That's around 18MB into the address space - your kernel is loaded at 1MB.

Do you really think you should be fetching instructions from that location? Stack corruption is the obvious problem that springs to mind.

Re: Page Fault by MM of JamesM

Posted: Fri Jul 04, 2008 2:03 pm
by PHPnerd
I've fixed it. I only forgot +0x1000 :P
Now my memory manager works fine


thnx :)

PHPnerd