Bootstrapping
Bootstrapping done in following two phase.
1)
Kernel Loading
i)
Once GRUB has
started and you have selected Linux as the operating system to boot, the first
thing to get loaded is the kernel.
ii) No operating system exists in memory
at this point, and PCs (by their unfortunate design) have no easy way to access
all of their memory.
iii) Thus, the kernel must load completely
into the first megabyte of available random access memory (RAM), In order to
accomplish this, the kernel is compressed.
iv) The head of the file contains the code
necessary to bring the CPU into protected mode (thereby removing the memory
restriction) and decompress the remainder of the kernel.
2) Kernel Execution
i)
With the kernel
in memory, it can begin execution, It knows only whatever functionality is
built into it, which means any parts of the kernel compiled as modules are
useless at this point.
ii) At the very minimum, the kernel must
have enough code to set up its virtual memory subsystem and root file system
(usually, the ext3 file system).
iii) Once the kernel has started, a
hardware probe determines what device drivers should be initialized.
iv) From here, the kernel can mount the
root file system, root system is same as that of C drive in windows OS.
The kernel mounts the root file system and starts a program called
init.
No comments:
Post a Comment