Quote:Original post by CrypterQuote:
How can I call a kernel from the bootloader, the strange thing is, theres plenty of tutorials on how to make a boot loader, and how to make kernels but none show how to actually load one from another, any extra tutorial sources are welcome, (I get most of the info from osdever.net). Thanks.
Just jump to the address you load the kernel at. If you are in pmode,
you need to add the seg selector as well (Useually 08h). ie:[BITS 32]; set up stack...; pmode jump to kerneljmp 08h:01000h
If the kernel (or second stage loader) was loaded at 0x1000:0,
execution will continue from there.
thanks, I actulally found a pretty good source written by xsism that shows how to dovelop a bootloader along with a C kernel.
Just one more question, a bit off topic but - what does it mean when a register is used for this or that, for example eax is an accumulation, ebx as a base pointer, ecx as counter - is that just a convention that was decided upon or are they really suited better to the tasks that they are labeled with, aren't registers just small fast rams next to the processor, so whats the difference which one you use for something?