I would like to state before hand, that I am relatively new to the OSDev scene and I may not have any idea of what I'm about to say.
I recently starting trying to incorporate Higher Half x86 Bare Bones into my project, but I was unable to get it to work.
After some digging, I wound up in the same position as the person in this post.
The solution I found was to move _kernel_start to include the multiboot text and data. I believe the problem was that once paging was enabled, the next instruction to jump to the higher half was no longer accessible/mapped.
You have to adjust the initial loop because _kernel_start is no longer in the 0xC0000000 range, but other than that, its a simple fix.
I'm just looking for some confirmation here; I don't want to go editing any wiki pages if I didn't know what I was doing. Any feedback would be appreciated.
Updating Higher Half x86 Bare Bones.
-
- Member
- Posts: 5560
- Joined: Mon Mar 25, 2013 7:01 pm
Re: Updating Higher Half x86 Bare Bones.
Go for it.
At one point, _kernel_start included the entire kernel. It's not clear exactly why that changed.
At one point, _kernel_start included the entire kernel. It's not clear exactly why that changed.
Re: Updating Higher Half x86 Bare Bones.
May worth making an x86_64 higher half tutorial as well.