Hi All,
I'm writing my own boot loader. The boot loader first loads my kernel to address 0x90000. Then I want it to transfer the kernel to it's final place at 0x100000. I was trying to figure out how Linux does it but could not understand the concept. I've found the code that I think should do it in function
do_move0 at setup.S. But there the kernel is transferred to 0x1000 for low loaded image, and for high we skip this part.
My question is how this transfer is done in Linux? And how can I implement the transfer from 0x90000 to 0x100000?
As far as I know I need first to move into protected mode in order to produce address as 0x100000, isn't it so?
Thanks,
--
Respectfully yours,
Doron Bleiberg
E-Mail:
kernel.doron@xxxxxxxxx