A. The pathnames in the boot.ini file are the ARC (Advanced RISC Computing) pathnames, and are used to locate the NT boot partition. There are two main types of ARC names depending on if the disks are IDE or SCSI. For IDE they will follow the convention below:

multi(x)disk(x)rdisk(x)partition(x)\%systemroot%

Both the multi and disk are not really used for IDE and should always be 0. The rdisk is the physical drive and will be 0 or 1 on the first IDE controller, or 2 and 3 on the second IDE controller. Partition() is the partition number on the disk and starts from 1.

The scheme is slightly different for SCSI:

scsi(x)disk(x)rdisk(x)partition(x)\%systemroot%

Scsi() is the controller number of the SCSI identified in the Ntbootdd.sys. Disk() is the SCSI ID of the physical disk. RDISK() is the SCSI logical unit number (LUN), which will nearly always be 0. Partition is the same is with IDE and is the partition number starting with 1.

The multi() designation means that the drive can respond to INT 13 calls, and most SCSI drives can so you may use multi() with a SCSI drive also.

In a pure IDE system, the MULTI() syntax will work for up to the four drives maximum on the primary and secondary channels of a dual-channel controller.

In a pure SCSI system, the MULTI() syntax will work for the first two drives on the first SCSI controller (that is, the controller whose BIOS loads first).

In a mixed SCSI and IDE system, the MULTI() syntax will work only for the IDE drives on the first controller.

In Windows 2000 you may also see a signature(xxxxxxxx) format, for example:

signature(8b467c12)disk(1)rdisk(0)partition(2)\winnt="description"

Signature() syntax is used only if one of the following conditions exists:
  • The partition on which you installed Windows 2000 is larger than ~7.8 gigabytes (GB) in size, or the ending cylinder number is higher than 1024 for that partition and the system BIOS or boot controller BIOS does not support INT13 extensions.
  • The drive on which you installed Windows 2000 is connected to a SCSI controller whose BIOS is disabled, so INT13 BIOS calls cannot be used during the boot process.

The signature() syntax is equivalent to the scsi() syntax, but is used instead to support the Plug and Play architecture in Windows 2000. Because Windows 2000 is a Plug and Play operating system, the SCSI controller number instance may vary each time you start Windows 2000, especially if you add new SCSI controller hardware after Setup is finished.

As with scsi() format a ntbootdd.sys file must be located at the root of the system partition for signature().