Role of MBR in Booting Windows 2000
The Master Boot Record (MBR) serves as the critical bridge between system firmware and the operating system during the startup of Microsoft Windows 2000. Located on the very first sector of the boot drive, the MBR contains executable machine code and the partition table needed to identify the active system partition. This article outlines the structure of the MBR, its step-by-step role during hardware initialization, how it locates the Windows 2000 system partition, and how it hands off control to the Windows NT boot loader (NTLDR).
Structure of the Master Boot Record
The MBR occupies Sector 0 (Cylinder 0, Head 0, Sector 1) of a partitioned storage drive and is exactly 512 bytes in size. It consists of three primary components:
- Master Boot Code (446 bytes): The executable instructions executed by the system BIOS.
- Master Partition Table (64 bytes): A data structure containing four 16-byte entries detailing the primary partitions, their starting and ending sectors, sizes, file system flags, and bootable status.
- Boot Signature (2 bytes): The two-byte hexadecimal
word
0x55AA, which validates that the sector is a valid boot record.
Execution by the BIOS
When a computer starts, the Basic Input/Output System (BIOS)
completes the Power-On Self-Test (POST) to verify hardware readiness.
After POST, the BIOS queries its boot device order, reads the first
physical sector of the primary drive into system memory at memory
address 0000:7C00h, checks for the 0x55AA
signature, and transfers execution to the Master Boot Code.
Locating the Active Partition
Once executed, the MBR code scans the partition table to find the
primary partition marked as "active" (indicated by a boot flag value of
0x80). Windows 2000 requires that its boot files reside on
this active partition. During this scan, the MBR enforces specific
checks:
- It confirms that exactly one partition has the active status.
- If no active partition exists, or if more than one is found, the MBR halts execution and displays an error message such as "Invalid partition table" or "Missing operating system."
Loading the Partition Boot Sector
After identifying the active partition, the MBR reads the starting
sector of that partition, known as the Partition Boot Sector (PBS) or
Volume Boot Record (VBR), into RAM. The MBR validates the boot sector by
checking for the 0x55AA signature at its end. If valid, the
MBR transfers CPU execution control directly to the code within the
partition boot sector.
Transition to the Windows 2000 Boot Process
The MBR's job is complete once execution reaches the Partition Boot
Sector. From this point, the file-system-specific code inside the boot
sector loads NTLDR (the Windows NT Loader) from the root
directory of the active FAT16, FAT32, or NTFS file system.
NTLDR then reads BOOT.INI, enters protected
mode, and proceeds to load the Windows 2000 kernel
(NTOSKRNL.EXE).