DESCRIPTION
Multiboot is a specification that defines a protocol between a boot loader and a kernel. This protocol allows passing boot information between the two in a standard way, allowing any Multiboot-compliant boot loader to boot any Multiboot-compliant kernel. The
NetBSD kernel supports Multiboot if it was compiled with
options MULTIBOOT (the default in the ‘GENERIC' and ‘GENERIC_LAPTOP' configurations).
Unlike when using the native boot loader, the NetBSD kernel recognizes a set of command line arguments if booted through a Multiboot-compliant boot loader. This is because the Multiboot protocol is not complete enough to completely configure a NetBSD kernel.
The following arguments are recognized:
-
console
-
Specifies the console device name. Can be one of ‘com' or ‘pc'. If the former, console_addr and console_speed should be given too.
-
console_addr
-
Specifies the serial port address for the console. Defaults to the value of options CONADDR or ‘0x3f8' if this was not given.
-
console_speed
-
Specifies the serial port speed for the console. Defaults to the value of options CONSPEED or ‘9600' if this was not given.
-
root
-
Specifies the name of the device to be mounted as the root partition. It should not be needed because the kernel tries its best to guess which is the root partition (basing the decision on the device from which the kernel was loaded from). In cases where the automatic detection fails, this flag comes useful. Example: ‘root=wd0e'.
Booting with GRUB Legacy
GRUB Legacy is the most popular bootloader that supports Multiboot. You can boot a
NetBSD kernel (assuming it is compiled with Multiboot support) with a line similar to the following one:
kernel (fd0)/netbsd.gz -c console=pc root=wd0e