Professional Documents
Culture Documents
Have you ever given it a thought that when you press the power button on your
laptop or PC, what happens behind the logo of Windows XP/Vista/Seven or Linux?
From the pressing of the power button to the appearance of the login screen there
are more than hundred components/peripherals that are initialized and thousand
lines of code is executed during the process of booting. But what is booting? We
will look inside the machine, that actually what all happens. So let us start
What is Booting?
Booting is a process or set of operations that loads and hence starts the operating
system, starting from the point when user switches on the power button.
But
will
keep
it
as
general
as
possible. General
Booting
CPU pins are reset and registers are set to specific value.
BIOS run POST (Power-On Self Test) and other necessary checks.
These are the tasks that are carried during booting process. Now let us discuss them
in detail.
As soon as we turn the power button, the reset signal is sent and the registers in the
CPU are set to their pre defined value. The first and foremost is the reset vector as
shown in the figure (example is taken of 4GB RAM). It should be noted that RAM
contains the garbage value at this time, and the instructions/data stored at any
memory location is due to the memory map of the chipset. Memory map maps the
location (address) to flash memory containing values or instructions. It is ensured
that the instruction stored at this reset vector location is jump to system BIOS, as
BIOS takes up further process of powering up the system.
POST- Power on Self Test is the foremost routine which checks and tests the
Initialization of the hardware devices by letting them run their individual BIOS( eg.
Copying the boot sector code to RAM and then switching the control to it.
Boot Sectors
A sector is a part of the hard disk having length of 512 bytes. A sector is termed as
boot sector because of its location and because this sector is responsible for the
further boot process of the system. This boot sector is generally called Master Boot
Record. The MBR is a 512-byte sector, which is located in the first sector on the disk
(sector 1 of cylinder 0, head 0). As soon as BIOS gets the boot sector, it tends to
copy MBR to RAM and switches the execution authority to it.
In the MBR the first 446 bytes are the primary boot loader, which is also referred
as PBL.
The next sixty-four bytes are the partition table, which has the record for each of
the partitions.
The MBR ends with two bytes that should be 0xAA55. These numbers act as
validation that this sector is the boot sector or Master Boot Record.
Hard drives
Bootstrap
Definition - What does Bootstrap mean?
A bootstrap is the process of starting up a computer. It also refers to the
program that initializes the operating system (OS) during start-up.
The term bootstrap or bootstrapping originated in the early 1950s. It referred
to a bootstrap load button that was used to initiate a hardwired bootstrap
program, or smaller program that executed a larger program such as the OS.
The term was said to be derived from the expression pulling yourself up by
your own bootstraps; starting small and loading programs one at a time while
each program is laced or connected to the next program to be executed in
sequence.
Linux loader (LILO): A bootloader for Linux that generally runs from a
hard drive or floppy disc
Network interface controller (NIC): Uses a bootloader that supports
booting from a network interface such as Etherboot or pre-boot
execution environment (PXE)
Prior to bootstrap a computer is said to start with a blank main memory and an
intact magnetic core memory or kernel. The bootstrap allows the sequence of
programs to load in order to initiate the OS. The OS is the main program that
manages all programs that run on a computer and performs tasks such as
controlling peripheral devices like a disc drive, managing directories and files,
transmitting output signals to a monitor and identifying input signals from a
keyboard.
Bootstrap can also refer to as preparing early programming environments
/////
In most modern computers, when the computer activates the hard
disk drive, it finds the first piece of the operating system: the bootstrap
loader.
The bootstrap loader is a small program that has a single function: It
loads the operating system into memory and allows it to begin operation.
In the most basic form, the bootstrap loader sets up the small driver
programs that interface with and control the various hardware
subsystems of the computer. It sets up the divisions of memory that hold
the operating system, user information and applications. It establishes
the data structures that will hold the myriad signals, flags and
semaphores that are used to communicate within and between the
subsystems and applications of the computer. Then it turns control of the
computer over to the operating system.
have multiple boot loader programs classified as primary and secondary boot
loaders, where a secondary boot loader might be larger and more capable
than the primary boot loader.