[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Booting



On Tue, Mar 19, 2002 at 02:27:47AM +0000, Tony Finch wrote:
> In article <[🔎] 20020317182320.GA2898@celeron.dekkers> you write:
> >
> >Reading quickly the things supported, I think those things can be
> >passed from the loader to the kernel using the multiboot
> >specification. FreeBSD doesn't need to abandon its bootloader and the
> >way of doing things, just change it to use the multiboot
> >specification. That way you could use the FreeBSD loader for every
> >kernel and every multiboot-compliant bootloader for the FreeBSD kernel.
> 
> You should be reading the man pages for the -CURRENT boot loader,
> because it has changed significantly since 4.X. The loader is
> responsible for:

I think the multiboot standard is flexible enough. If it isn't, we
should change it IMHO. :)
 
> (1) passing boot flags for things like single-user mode, etc.

This is supported.

> (2) passing environment variables, such as boot-time tunables
>     (size of static data structures in the kernel etc.) and
>     unprobeable device information (mostly for non-PnP ISA).
>     (The latter is new in -CURRENT.)

This is also possible.

> (3) pre-linking modules into the kernel; the kernel itself
>     doesn't have to include all the drivers needed to boot
>     on a machine.
> 
> Does GRUB include a linker?

It doesn't matter what GRUB includes, the thing which matters if the
FreeBSD bootloader and kernel can be modified to use the multiboot
specification. I think that's possible.

Miltiboot does support passing modules. The actual linkage (like
symbol lookups etc) should be done in the kernel, because this is
kernel-dependent. But I think this is already the case, isn't it?
(Sorry, no time to find it out)

Jeroen Dekkers
-- 
Jabber supporter - http://www.jabber.org Jabber ID: jdekkers@jabber.org
Debian GNU supporter - http://www.debian.org http://www.gnu.org
IRC: jeroen@openprojects

Attachment: pgpn6CAA5Ck45.pgp
Description: PGP signature


Reply to: