Bochs "physical adress not available" after enabeling paging

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Nezmar
Posts: 11
Joined: Tue Jan 21, 2025 2:00 am

Re: Bochs "physical adress not available" after enabeling paging

Post by Nezmar »

Octocontrabass wrote: Tue Jan 21, 2025 12:37 pm It does throw a page fault. When it tries to handle the page fault, it encounters another page fault. When it tries to handle that page fault, it encounters a third page fault and shuts down. The chipset detects the shutdown and resets the CPU.
How comes it encounter a page fault when handling a page fault? Should paging not be disabled when calling the interrupt?
Octocontrabass
Member
Member
Posts: 5623
Joined: Mon Mar 25, 2013 7:01 pm

Re: Bochs "physical adress not available" after enabeling paging

Post by Octocontrabass »

Nezmar wrote: Tue Jan 21, 2025 12:42 pmHow am i supposed to do it then?
Normally you reserve part of the virtual address space for your kernel and keep your entire kernel mapped the same way all the time.
Nezmar wrote: Tue Jan 21, 2025 12:44 pmHow comes it encounter a page fault when handling a page fault? Should paging not be disabled when calling the interrupt?
Paging stays enabled. Where did you hear otherwise?
Nezmar
Posts: 11
Joined: Tue Jan 21, 2025 2:00 am

Re: Bochs "physical adress not available" after enabeling paging

Post by Nezmar »

So basically the kernel still needs to be mapped in the processes page directory so that it can call interrupts and all?
Nezmar
Posts: 11
Joined: Tue Jan 21, 2025 2:00 am

Re: Bochs "physical adress not available" after enabeling paging

Post by Nezmar »

Well after reading the wiki again I realized that I have made some incorrect assumptions about how paging works.

Anyway thanks a lot for the help. I think I understand it now.
Post Reply