Skip to content
Related Articles
Open in App
Not now

Related Articles

Boot Block in Operating System

Improve Article
Save Article
  • Difficulty Level : Medium
  • Last Updated : 25 Mar, 2023
Improve Article
Save Article

Basically for a computer to start running to get an instance when it is powered up or rebooted it need to have an initial program to run. And this initial program which is known as bootstrap needs to be simple. It must initialize all aspects of the system, from CPU registers to device controllers and the contents of the main memory, and then starts the operating system. 

To do this job the bootstrap program basically finds the operating system kernel on disk and then loads the kernel into memory and after this, it jumps to the initial address to begin the operating-system execution. 

Why ROM: 
For most of today’s computer bootstrap is stored in Read Only Memory (ROM). 

  1. This location is good for storage because this place doesn’t require initialization and moreover location here is fixed so that processor can start executing when powered up or reset.
  2. ROM is basically read-only memory and hence it cannot be affected by the computer virus.
  3. ROM is faster to access than other types of memory, such as hard drives or network storage, as it is stored directly on the motherboard of the computer. This can improve the performance of the system.

The problem is that changing the bootstrap code basically requires changes in the ROM hardware chips. Because of this reason, most system nowadays has the tiny bootstrap loader program in the boot whose only job is to bring the full bootstrap program from the disk. Through this now we are able to change the full bootstrap program easily and the new version can be easily written onto the disk. 

The full bootstrap program is stored in the boot blocks at a fixed location on the disk. A disk that has a boot partition is called a boot disk. The code in the boot ROM basically instructs the read controller to read the boot blocks into the memory and then starts the execution of code. The full bootstrap program is more complex than the bootstrap loader in the boot ROM, It is basically able to load the complete OS from a non-fixed location on disk to start the operating system running. Even though the complete bootstrap program is very small. 

Let us try to understand this using an example of the boot process in Windows 2000. 

The Windows 2000 basically stores its boot code in the first sector on the hard disk. Moreover, Windows 2000 allows the hard disk to be divided into one or more partitions. This one partition is basically identified as the boot partition which basically contains the operating system and the device drivers. 

Booting in Windows 2000 starts by running the code that is placed in the system’s ROM memory. This code directs the system to read code directly from MBR. In addition to this, boot code also contains the table which lists the partition for the hard disk and also a flag that indicates which partition is to be boot from the system. Once the system identifies the boot partition it reads the first sector from the memory which is known as a boot sector and continues the process with the remainder of the boot process which includes loading of various system services. 

The following figure shows the Booting from disk in Windows 2000. 




  1. Boot blocks are designed to be small and efficient, allowing the operating system to load quickly during the boot process.
  2. They can be used to verify the integrity of the operating system, ensuring that the system has not been tampered with or infected by malware.
  3. Boot blocks can be used to fix boot-related issues, such as corrupted boot sectors, by providing recovery options and diagnostic tools.
  4. They can be used to configure the system’s hardware and software settings, such as BIOS settings, network settings, and startup programs.


  1. Boot blocks can be vulnerable to malware attacks, as they are loaded into memory before the operating system’s security features are activated.
  2. They can consume a significant amount of memory, which may impact the overall performance of the system.
  3. Boot blocks may not be compatible with all hardware configurations, which could cause compatibility issues and boot failures.
  4. If the boot block becomes corrupted, it may prevent the system from booting up, requiring advanced recovery tools and technical expertise to fix.
My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!