Default Drive Letters and Partitions in Windows NT

Last reviewed: April 10, 1997
Article ID: Q93373
The information in this article applies to:
  • Microsoft Windows NT operating system version 3.1

Summary:

Windows NT tends to follow the drive lettering conventions established years ago for the earliest hard drives. However, Windows NT has fewer restrictions on the number of hard drives it supports. For example, most systems do not support more than two hard drives in the BIOS, with the remainder being supported by drivers loaded in CONFIG.SYS. Thus, the same partitions may have different letters in a system such as MS-DOS and Windows NT. Please note that this article discusses only the default drive lettering; you can use sticky drive letters (Disk Administrator) to alter this lettering.

In this article, primary partition refers to any partition that is a recognized partition (the different FAT partition types [1, 4, and 6], HPFS [High Performance File System] and NTFS [NT File System] [7]). A non-extended partition refers to a partition that has a type other than 0 (Empty) or 5 (Extended).

More Information:

This article describes the rules that Windows NT follows when assigning drive letters. Note: Only recognized partition types (1, 4, 6, 7) are assigned drive letters.

If there is a primary partition on the first hard drive marked as active, it gets the first drive letter (C); otherwise, the first drive letter is assigned to the first recognized primary partition.

This process is repeated for all hard drives in the system. Please note that if you have multiple controllers in your system, the drive letter ordering is based on the order in which the device drivers are loaded by Windows NT.

Once the letters have been assigned to the first primary partitions on all drives in the system, letters are assigned to the recognized logical disks in the extended partitions using the same scheme as outlined above, starting with the first drive in the system.

After all of the logical disks in the extended partitions are assigned letters, one last scan is made of the drives, and letters are assigned to any remaining recognized primary partitions.

For drives referenced in BOOT.INI, the ordering is similar except that the above scan is done only for drives supported in the BIOS. For drives not supported in the BIOS, it is necessary to use the arcname style paths. The most applicable arcname naming conventions are:

   multi()disk()rdisk()partition()\...

   scsi()disk()rdisk()partition()\...

The two are similar, except that the multi()disk() format varies the rdisk() parameter for successive disks on one controller (with a limit of two per controller), whereas the scsi()disk() notation uses the disk() parameter. Note that the rdisk() parameter actually refers to which SCSI logical unit (LUN) to use, which could be a separate disk, but the vast majority of SCSI setups have only one LUN per SCSI ID.

The partition() portion of the arcname refers to the partition number. Partition numbers are assigned, starting with partition(1). Note that partition(0) refers to the entire disk. First, all non-extended partitions (those having a partition type other than 0 or 5) are assigned numbers (and the active bit does not play a role), and then all logical drives in extended partitions are assigned numbers.

For example:

Assume a system with two controllers, one a WD1003 compliant controller (IDE/ESDI/ST506) supported by the ATDISK driver, and the other a SCSI host adapter supported by a SCSI miniport driver. There are two drives attached to the ATDISK controller and one drive attached to the SCSI host adapter (at SCSI ID 0).

There are two primary partitions on the first ATDISK drive, two partitions (one extended partition with one FAT partition inside and one primary NTFS partition) on the second ATDISK drive, and one primary FAT partition on the SCSI drive.

   +---------------+-----------------+
1/2| Primary (FAT) | Primary (XENIX) |
   +---------------+-----------------+

   +--------------------------+----------------+
3/4|Extended (one FAT inside) | Primary (NTFS) |
   +--------------------------+----------------+
   +--------------+
5 |Primary (FAT) |
   +--------------+

The drive letters are assigned as follows:

   MS-DOS: C=1, D=3, E=5 (loaded in CONFIG.SYS); 2 and 4 do not have
   drive letters.

   Windows NT: C=1, D=4, E=5, F=3; 2 does not have a drive letter.

   NTLDR/BOOT.INI: C=1, D=4, E=3; 2 and 5 do not have drive letters.

The arcname for each of the partitions is:

   1: multi(0)disk(0)rdisk(0)partition(1)

   2: multi(0)disk(0)rdisk(0)partition(2)

   3: multi(0)disk(0)rdisk(1)partition(2)

   4: multi(0)disk(0)rdisk(1)partition(1)

   5: scsi(0)disk(0)rdisk(0)partition(1)


Additional query words: prodnt
Keywords : kbfasttip
Version : 3.1
Platform : WinNT


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: April 10, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.