Other systems use different boot programs depending on the type of boot. When the power comes on or the system is reset, the BIOS starts the master boot program, located in the first 512 bytes of the system disk.
Here are typical kernel names and directory locations for the various operating systems we are considering: Once control passes to the kernel, it prepares itself to run the system by initializing its internal tables, creating the in-memory data structures at sizes appropriate to current system resources and kernel parameter values.
The kernel may also complete the hardware diagnostics that are part of the boot process, as well as installing loadable drivers for the various hardware devices present on the system.
Once these activities are complete, users may log in to the system.
At this point, the boot process is complete, and the system is said to be in multiuser mode.
Alternatively, if the executable from the root filesystem successfully begins executing, it is probably safe to assume that the file is OK. Alternatively, in the traditional BSD approach, the kernel handles checking and mounting the root filesystem itself.
Still another method, used when booting from tape or CD-ROM (for example, during an operating system installation or upgrade), and on some systems for normal boots, involves the use of an in-memory (RAM) filesystem containing just the limited set of commands needed to access the system and its disks, including a version of at boot time.The boot program is stored in a standard location on a bootable device.For a normal boot from disk, for example, the boot program might be located in block 0 of the root disk or, less commonly, in a special partition on the root disk.This system state is selected by a special boot command parameter or option; on some systems, the administrator may select it by pressing a designated key at a specific point in the boot process.To initiate single-user mode, forks to create a new process, which then executes the default shell (usually /bin/sh) as user root.Sometimes, the master boot program loads the kernel itself. The firmware program is basically just smart enough to figure out if the hardware devices it needs are accessible (e.g., can it find the system disk or the network) and to load and initiate the boot program.