Hello!

>   But I'd like to point out that GRUB is _not_ a boot selector. What
> is his definition of "boot selector"?

It's a software that gives you choice between different boot devices and
OS'es. OS/2 bootloader is a typical example. Although it's native for
OS/2, you cannot select the kernel unless you have different versions of
OS/2 installed on different partitions. Boot selector may present you a
friendly interface, support different medias and consoles, but loading the
OS kernel into the memory is somewhat outside its competence (although one
native OS and one native FS are usually supported).

Bootloader is, in my understanding, a software that is responsible for
reading the kernel from the filesystem, loading it into the memory,
relocating it if necessary and providing the kernel with user parameters
and system information that cannot be easily collected by the kernel
itself.

GRUB is unique in that it does both for many OS'es. But it can only be
done successfully if the number of kernel interfaces is limited, otherwise
GRUB becomes a pure boot selector for unsupported OS'es.

> 4) Remove the incompatibility in the current OpenBSD.
> 
> I know that keeping the compatibility with older versions is often a
> pain, but they should care for it since at least one person uses a
> non-OpenBSD boot loader (i.e. GRUB)!

In fact, I think that GRUB just doesn't implement some functionality that
used to exist in the old native bootloader as well.

The problem is that there are subtle differences between what different
breeds of kernels expect to get. But those differences tend to grow. In
the same time, the kernels are not labelled as expecting a certain
interface.

Of course, I can scan for "OpenBSD" in the whole kernel, but what if a
FreeBSD kernel will contain something like "ported from OpenBSD by ..." ?

Pavel Roskin

Reply via email to