halt or reboot the system
function handles final system shutdown, and either halts or reboots the
system. The exact action to be taken is determined by the flags passed in
howto and by whether or not the system has finished
If the system has finished autoconfiguration,
- Sets the boothowto system variable from the howto argument.
- If this is the first invocation of
boot() and the
RB_NOSYNCflag is not set in howto, syncs and unmounts the system disks by calling
vfs_shutdown() and sets the time of day clock by calling resettodr(9).
- Disables interrupts.
- If rebooting after a crash (i.e., if
RB_DUMPis set in howto, but
RB_HALTis not), saves a system crash dump.
- Prints a message indicating that the system is about to be halted or rebooted.
RB_HALTis set in howto, halts the system. Otherwise, reboots the system.
If the system has not finished autoconfiguration,
prints a message, and halts the system (unless
RB_USERREQ is specified, in which case the system
will be halted if
RB_HALT is given, and rebooted
otherwise; see reboot(2) for more details).