If you boot your computer from an IDE/ATA drive or a SCSI drive from a SCSI controller that supports its own BIOS, you won't see the ntbootdd.sys file on your computer. However, if you are loading Windows XP from a SCSI drive on a controller that does not have its own BIOS, ntbootdd.sys appears on the root of the drive that has ntldr on it. ntbootdd.sys is the SCSI driver for your SCSI controller, but it has been renamed from the driver's actual name to ntbootdd.sys.
The boot.ini file is a text file on the root of your system partition that lists the OSes that are available to boot. It contains the default timeout value for the boot menu to be displayed, and where ntldr can find each copy of the OS. Upon looking at the boot.ini for the first time, you may be confused by the strange notation used to donate locations (this notation is called an ARC pathname and it is discussed in the next section).
Listing-1 shows what a sample boot.ini file would look like.Listing-1: A Sample boot.ini File
[boot loader] timeout=10 default= multi(0)disk(0)rdisk(0)partition(3)\WINDOWS [operating systems] C:\="Microsoft Windows 98" multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="Windows XP" multi(0)disk(0)rdisk(0)partition(4)\WINNT="Windows 2000" multi(0)disk(0)rdisk(0)partition(4)\WINNT="Win 2K Error"/SOS multi(0)disk(0)rdisk(0)partition(2)\WINNT="Windows NT 4.0"
The first section in the boot.ini file is the [boot loader] section. It lists the timeout value, the number of seconds to display the boot menu, and the default OS to boot. The default OS is located in the OS listing in the file. The first OS in the list with a matching path is loaded by ntldr.
In this code listing, the [operating systems] section lists all of the OSes that boot.ini knows about on the system. This section would be built and added to as you install multiple copies of Windows XP-based OSes on a system. (You may have multiple versions of an OS installed if this is a testing or development system.) The sample boot.ini file above also has two entries that refer to the same path (partition 4). The difference between them is the application of the SOS switch at the end of the second line. The description strings that are used in this section are the display text for the boot menu, but they have no effect on the boot process of the OS.
If you have only one copy of Windows 2000 or Windows XP installed, then you won't see the boot menu at all, since there is only one choice of operating system to load.
In this tutorial:
- System Files and the Boot Process
- Power-On Self-Test (POST) Process
- Standard Boot Process for Windows XP
- ARC pathnames
- The device load process
- Loading the shell
- Understanding the Boot Process for MS-DOS and Windows 9x
- win.com and vmm32
- Managing Memory
- Expanded memory
- Upper memory
- Examining Other Boot Process Files