Jump form bootloader to kernel
Posted: Tue Nov 23, 2010 11:05 am
Hello everybody
I'm new to the osdev forum, and I've got a little problem understanding a certain piece of theory.
All the pages & wiki's I've read (and I've read them before asking my question) said that there are many kinds of boot loaders. But that they ultimately do the same thing: Transferring control to the kernel after setting up it's environment (stack, real/unreal/protected mode, enz, enz)
Thats all the wiki's have to say about it. But how am I supposed to do this? I've made the boot loader (I've c+pd it and then remade it) and a test environment.
But I don't understand how the kernel is loaded, sure the windows kernel is far bigger than 512 kb? So you switch to protected mode, but your kernel is still on the disk right?
So ultimately;
How to put the kernel in memory?
I'm new to the osdev forum, and I've got a little problem understanding a certain piece of theory.
All the pages & wiki's I've read (and I've read them before asking my question) said that there are many kinds of boot loaders. But that they ultimately do the same thing: Transferring control to the kernel after setting up it's environment (stack, real/unreal/protected mode, enz, enz)
Thats all the wiki's have to say about it. But how am I supposed to do this? I've made the boot loader (I've c+pd it and then remade it) and a test environment.
But I don't understand how the kernel is loaded, sure the windows kernel is far bigger than 512 kb? So you switch to protected mode, but your kernel is still on the disk right?
So ultimately;
How to put the kernel in memory?