Fedora 12 Initialization Process
MBR and kernel
- BIOS (Basic Input Output System) is the lowest interface between the computer and peripherals.
It performs integrity checks on memory and seeks intructions on the MBR (Master Boot Record) on
the floppy or hard drive.
- The MBR points to the GRUB boot loader.
- The boot loader then asks the OS label which will identify which kernel to run
and where it is located. The installation process requires to create/identify the partition and where
to install the OS. GRUB are also configured during this process.
- The boot loader then loads the operating system.
- The first thing the kernel does is to execute
init
program. Init is the parent of all processes
executed on linux.
- The first process that
init
starts is a script /etc/rc.sysinit
. The script file then directs init
to:
- Runs /etc/sysconfig/network. NETWORKING variable tells the kernel whether networking function should be activated or not, and HOSTNAME variable contains your computer's hostname and domain name,
- Mounts filesystems defined in
/proc/mounts,
- Mounts USB filesystems defined in
/proc/bus/usb
directory,
- Prints banner contains in /etc/redhat-release,
- Initializes kernel parameter at runtime by reading /proc/modules configuration file,
- Initializes user-defined modules from
/etc/sysconfig/modules
directory,
- Sets device mapper multipath from
/etc/multipath.conf
configuration file,
- Based on the appropriate run-level, several scripts are executed to start various processes to make the system functional.
- The
init
process is the last step in the boot process and is identified by process id '1'.
init
is responsible for starting the system processes as defined in the /etc/inittab
. init
typically
will start multiple instances of getty which waits for console logins which spawns one's shell process.
Upon shutdown, init
controls the sequence and processes for shutdown. The init
process is never shut down.
It is a user process and not a kernel system process, although it does run as root.
Mohd Azuraidi bin Harun <jd (dot) azura (at) gmail (dot) com>
$Id: init.php 456 2014-02-20 17:02 MYT azuraidi $