Bootloader
This is contained under the first sector of the disk and read and executed by the BIOS.
Often presented as list possible boot option to run an operating system. Once selected then loads the operating system , which decompress into memory, and setup function such as essential hardware and memory paging before calling 'start_kernel()'
Kernel Initialization
The kernel in Linux handles all operating system process such as memory management, task scheduling, I/O, inter process communication, and overall system control.
This is done in two steps:
1st)
Kernel is loaded into memory (RAM) and decompressed. Few fundamental functions is setup to memory management.
2nd)
Then the control is switch to main kernel start process.
Once the kernel is fully operational. it looks for an init process to run. Which setup a user space and process for a user environment and login session. After that it stay in idle state.
Kernel initialization includes:::
detection and initializing of devices hardware.
mount root file system in read-only mode.
Loading the initial process "init"
Log files /var/log/dmesg can be check to see what happened during kernel initialization.
Initializing the BIOS
The BIOS is the interface between the hardware and software at a very basic level. It provides all the basic information used by operating system.
The BIOS being by executing can auto-ignitions test (POST) and then it search for device.
After the POST, a boot device is selected from list that is configurable in the BIOS.
The BIOS read and execute the first physical sector of the boot media selected on the system. Where is usually contains in nth first 512 byte (Half of an KB) of hard disk.
Initialization "init"
init initialization is the father of all processes. Its primary roles is to create the process from a script stored in the file /etc/inittab.
init reads its configuration form the /etc/inittab file, that contains the setting for the system at every levels of executions.
Level | Description |
0 | Shutdown or halt the system. |
1 | Single-user mode for maintenance |
2 | No network, but multi-tasking |
3 | Multi-user mdoe with networking and terminal login |
4 | User-defined run level |
5 | Multi-user mode with graphical desktop enviroment |
6 | Reboots the system |
Process spawned by init for each run level is defined in the file /etc/inittab
init start all background process required to run the system.
Run level defines the state of the machine after boot.
Run level zero, it shuts off when enter runlevel zero 0, it reboot.
Thanks ...
✍️ Only article/post centric comments are allowed.
❌**No Spam**
❌**Advertisement**
❌**No abuse**
Rules strictly applied ✅