Page 1 of 1

Do we need more than GRUB ?

Posted: Wed Jan 25, 2006 2:20 am
by Pype.Clicker
Well, as you may know, i've been porting Clicker to GRUB recently. and yet i'm willing to offload more of the "initialization" to a "program" that is not actually part of the microkernel (called "kicker" :P)

And somehow, i'm wondering whether the MT community might have a use for a "OS loading framework" that would do even more things than GRUB, such as
  • [o] support arbitrary "realmode" detectors that would be loaded, scan stuff and report them to memory (anything you might need the BIOS for) under a generic format (type-length-value entries listed one after the other)
    [o] move GRUB-reported information to a contiguous area of memory (Kicker already does this for most of them)
    [o] prepare any number of address space as needed (e.g. for each "boot-time services"), using GRUB-loaded modules
    [o] optionnally run code for every detected CPU (though i'm pretty ignorant of all SMP-relative issues and barely know more than the meaning of NUMA -- brendan, you're welcome here)
The result would be a kind of "MoreBones" program that runs gets loaded by a "modified" GRUB (containing the "detectors" logic), that receives a collection of (ELF?) modules and prepare the full environment before it signs off and release its own memory.

I was imagining we could depict a common API that "MoreBones" would e.g. use to report memory usage to the loaded kernel or something alike ...

anyone interested ?

Re:Do we need more than GRUB ?

Posted: Wed Jan 25, 2006 2:43 am
by cenan
supporting other binary formats could also be added
and i would be glad to help for a better grub project

Re:Do we need more than GRUB ?

Posted: Wed Jan 25, 2006 2:51 am
by Solar
Hm. As usual I cast my vote before reading the thread, because I feel that otherwise it wouldn't be my opinion I voice.

I voted for "GRUB is just fine".

But reading Pype's posting... I think what most people don't like with GRUB is that you don't get the chance to run RealMode code. Being able to do that, and gather some additional information before ProtectedMode kicks in, would indeed be very welcome I think.

Re:Do we need more than GRUB ?

Posted: Wed Jan 25, 2006 6:14 am
by kataklinger
@Pype:
  • finding PCI devices is very easy in pmode (and I'm unaware of ISA devices) so I think that there is no need to do scaning in rmode
  • well this one sound nice
  • I think that this should be done by kernel, bootloader should only load executable file and do nothing with it, just pass memory address where the executable is loaded and then kernel executable loader can do relocation and other relevant stuff
  • everything about SMP I would leave to kernel
The result would be a kind of "MoreBones" program that runs gets loaded by a "modified" GRUB (containing the "detectors" logic), that receives a collection of (ELF?) modules and prepare the full environment before it signs off and release its own memory.
As I said bootlader just need to load file PE, ELF or any other. Kernel should be aware of executable format it is using not bootloader (for instance I preffer PE32 and someone else using ELF, if bootlader can handle only ELF modules then I cannot use that bootloader, and the other way orund)