macppc system bootstrapping
When powered on, after a panic, or if the system is rebooted via reboot(8) or shutdown(8), the Open Firmware will proceed to its initialization, and will boot an operating system if the auto-boot? variable is set to “true”, or will wait for interactive commands otherwise.
Boot process description
The Apple Open Firmware will normally load the kernel from the device and filename as instructed by the boot-device and boot-file variables. If the boot-file variable is empty, the OpenBSD bootloader will look for a kernel named bsd, unless a different filename has been specified in the boot command. To reset this variable to its default, empty, value, type the following at the Open Firmware prompt:
The OpenBSD bootstrap program is named “ofwboot”. It can be installed either in a HFS partition or in a MSDOS partition on the disk. If MBR partitioning is chosen for the disk, the bootstrap program will be installed automatically during the OpenBSD installation procedure. For HFS shared disks, the ofwboot file must be installed manually. The ofwboot program can be loaded from any Open Firmware recognized disk or network device.
Boot process options
If invoked manually without parameters, or if the specified kernel could not be loaded, the OpenBSD bootloader will let the user enter a boot device, kernel filename and boot options.
If the special line
exit is entered, the
bootloader will attempt to restart the machine.
The file specification used is of the form:
where promdev is an optional Open Firmware device name (such as “hd” or “ide”). Normal line editing characters can be used when typing the file specification.
The following options are recognized:
- Prompt for the root filesystem and swap devices after the devices have been configured.
- Enter the “User Kernel Config” mode upon startup (see boot_config(8)).
- Enter the debugger, ddb(4), as soon as the kernel console has been initialized.
- Boot the system single-user. The system will be booted multi-user unless this option is specified.
Abnormal system termination
In case of system crashes, the kernel will usually enter the kernel debugger, ddb(4), unless it is not present in the kernel, or it is disabled via the ddb.panic sysctl. Upon leaving ddb, or if ddb was not entered, the kernel will halt the system if it was still in device configuration phase, or attempt a dump to the configured dump device, if possible. The crash dump will then be recovered by savecore(8) during the next multi-user boot cycle. It is also possible to force other behaviours from ddb.
Accessing the PROM
The prom can only be accessed during system reset, or at power-up. To enter Open Firmware, press and hold “Cntrl” “Cmd” “o” “f” as the machine resets until it enters the Open Firmware debugger.
On an Xserve using serial console the System Identifier button is used to enter Open Firmware instead of the keyboard. To enter Open Firmware, hold down the System Identifier button while pressing the Power button. When the upper LED bank begins lighting up in sequence, repeatedly press the System Identifier button until the seventh LED from the right is highlighted in the lower bank. Now hold the System Identifier button for two seconds, until all the top row LEDs light up.
- default system kernel
- standalone installation kernel, suitable for disaster recovery
- system bootstrap (usually installed on a stand-alone FAT partition or an Apple HFS partition, to be readable by Open Firmware)
ddb(4), boot_config(8), halt(8), init(8), installboot(8), reboot(8), savecore(8), shutdown(8)