Re: Adding new HDD to system using dual boot

From: R. C. White (rc_at_corridor.net)
Date: 12/09/04


Date: Thu, 9 Dec 2004 14:45:59 -0600

Whoops! Typo...

> partition. The extended partition itself does get a "drive" letter, but

should say...
partition. The extended partition itself does NOT get a "drive" letter, but

RC

-- 
R. C. White, CPA
San Marcos, TX
rc@corridor.net
Microsoft Windows MVP
"R. C. White" <rc@corridor.net> wrote in message 
news:OF950Lh3EHA.3000@TK2MSFTNGP15.phx.gbl...
> Hi, Bill.
>
> My memory on drive letter assignment sequence is about as hazy as 
> Sharon's, but I happen to have some literature on it handy, so here's the 
> long version of the explanation.  ;^}
>
> "Drive" letters are not permanently assigned.  Each time you reboot, 
> former drive letters are forgotten and the BIOS assigns letters from 
> scratch using its built-in algorithm, which can't be changed except by the 
> folks who write the BIOS.  What was Drive X: this morning might be Drive 
> Y: this afternoon if you added or removed HDDs, or added or removed 
> volumes on existing HDDs. For x86 computers, the BIOS algorithm has not 
> changed in many years; I've read about the order more than once, but don't 
> remember it.  As I recall, all primary partitions on the first HDD are 
> assigned letters first, then primary partitions on other HDDs, then 
> logical drives in extended partitions, then driver-managed devices, such 
> as CD/DVD drives, USB drives, cameras, etc.
>
> Once Windows loads, it may re-assign the letters, using its own built-in 
> rules, which may be different from the BIOS assignments, and Win98 rules 
> are different from WinXP rules.  But we have some control over these 
> letters, if we choose to use that control.  By using Disk Management in 
> WinXP or Device Manager in Win98, we can assign letters of our choice and 
> Windows will attempt to use those same letters on each reboot thereafter.
>
> "Drive letter" is actually a misnomer because letters are not assigned to 
> physical drives.  After we create primary partitions on an HDD, each of 
> those partitions is assigned a letter, so we sometimes call it a partition 
> letter, but that's not strictly true, either.  We can create an extended 
> partition, then create multiple logical drives within that extended 
> partition.  The extended partition itself does get a "drive" letter, but 
> each of the logical drives within it gets a letter.  Each primary 
> partition and each logical drive is a "volume" and each volume is assigned 
> a "drive letter".  In boot.ini, volumes are referred to as 
> rdisk(#)partition(#). HDDs are numbered starting with zero.  "Partition" 
> actually means "volume" in this case and numbering starts with one on each 
> HDD.  On a physical drive with one primary partition followed by an 
> extended partition, the second logical drive would be "partition(3)".
>
> You can read about the drive letter assignment rules here:
> http://www.microsoft.com/resources/documentation/Windows/XP/all/reskit/en-us/Default.asp?url=/resources/documentation/Windows/XP/all/reskit/en-us/prork_overview.asp
>
> Here's a quote pasted from that chapter of the Windows XP Professional 
> Resource kit:
>
> <begin Paste>
> After you create each volume, Setup assigns it a drive letter. The drive 
> letter that Setup chooses depends on whether other basic volumes, dynamic 
> volumes, and removable disks have drive letters already assigned. For all 
> volumes and removable disks without drive letters, Setup assigns drive 
> letters by using the following method:
>
> 1. Scans all fixed hard disks as they are enumerated. Assigns drive 
> letters starting with any active primary partition (if one exists); 
> otherwise, scans the first primary partition on each disk. Assigns the 
> next available letter starting with C.
>
> 2. Scans all fixed hard disks and removable disks, and assigns drive 
> letters to all logical drives in an extended partition or the removable 
> disk(s) as enumerated. Assigns the next available letter starting with C.
>
> 3. Scans all fixed hard disks and assigns drive letters to all remaining 
> primary partitions. Assigns the next available letter starting with C.
>
> 4. Scans floppy drives and assigns the next available drive letter 
> starting with A.
>
> 5. Scans CD-ROM drives and assigns the next available letter starting with 
> D.
>
> Windows XP Professional and Windows 2000 assign drive letters differently 
> from how Windows 98, Windows Me, and Windows NT 4.0 assign drive letters. 
> Therefore, if the computer starts multiple operating systems, the drive 
> letters might vary depending on which operating system is running. For 
> more information about how Windows XP Professional and Windows 2000 assign 
> drive letters, see the Microsoft Knowledge Base link on the Web Resources 
> page at http://www.microsoft.com/windows/reskits/webresources. Search the 
> Knowledge Base by using the keywords "LDM" and "cmdcons."
>
> <end Paste>
>
> This explains why inserting your second HDD, with its priimary partitions, 
> changed the letter for the second partition on your first HDD.  As Rule 1 
> says, after assigning C: to the active primary partition on HDD0, it 
> assigns D: to the first primary partition on HDD1.  Then it returned to 
> HDD0 and looked for logical drives in an extended partition (Rule 2).  You 
> haven't told us which of your volumes are logical drives, but since each 
> HDD can have a maximum of 4 partitions, and your HDD0 is using 5 volumes, 
> some of them must be logicals.  You apparently have either 1, 2 or 3 
> primary partitions, plus an extended partition, plus 4, 3 or 2 logical 
> drives within the extended partition.  Rule 2 would assign letters to each 
> logical drive. Then Rule 3 would assign letters to any remaining primary 
> partitions, before moving on to Rule 5 to assign letters to your CD/DVDs.
>
>> As you will notice, there is no reference to Win98SE in the file,
>
> While WinXP and Win9x/ME may be installed into any volume in your computer 
> (which will become the "boot volume" for THAT Windows installation only), 
> the boot process always starts in the "system partition" (the active 
> primary partition on the first physical HDD), which is almost always Drive 
> C:.  The Root of this system partition (C:\) holds the few "system files" 
> for both WinXP (NTLDR, NTDETECT.COM and Boot.ini) and Win9x/ME (io.sys and 
> msdos.sys).  The boot sector of C: is different for NT-based operating 
> systems than for those based on MS-DOS.  When the computer boots, the 
> DOS-style boot sector automatically looks for C:\io.sys to boot MS-DOS or 
> Win9x/ME, depending on the contents of C:\msdos.sys.  If WinXP Setup 
> detects Win9x/ME already installed, it saves a copy of the DOS-style boot 
> sector in a new file, C:\bootsect.dos, then overwrites the boot sector 
> with the NT version.  Thereafter, when the computer boots, the NT boot 
> sector looks for C:\NTLDR, which finds C:\boot.ini and puts the operating 
> system menu onscreen.  If we choose WinXP, it finds the WinXP boot folder 
> by rdisk(#)partition(#) and loads WinXP from there.  If we choose 
> Win9x/ME, it loads C:\bootsect.dos and turns control over to it so that it 
> can find and load C:\io.sys and C:\msdos.sys.  So the line that loads 
> Win98 for you is that bottom line in boot.ini:  C:\ = "Microsoft Windows" 
> (but there should be NO space before or after the "=").  Note that this 
> line does not use drive or partition number; it always refers to C:\, the 
> Root of the system partition.
>
> That may be more information than you wanted, Bill, but it's hard to 
> explain this stuff without leaving loose ends dangling.  And, too often, 
> the fine point that is left out is exactly the little detail that makes 
> the difference in the current situation.
>
> RC
>
> "Bill Post" <BillPost@discussions.microsoft.com> wrote in message 
> news:83D7632A-5B56-4723-8430-DA8E3FD95E84@microsoft.com...
>> Hope this don't turn up as a double post.
>> I posted it a couple of hours ago and as of yet it's not showing up.
>>
>> I built a system about 3 yrs. ago with a single 40 gig. hard drive.
>> Using FDISK, I partitioned the drive into 5 partitions, C,D,E,F,G,
>> Drive No. is "0"
>> Installed Win.98SE on D partition, then installed XP Home Edition on C
>> partition.
>> Default OS is XP.
>>
>> A few days ago I installed another 40 gig.drive, and  DOS re-arranged my 
>> drive
>> letters by inserting the partitions on the second drive in after "C" and
>> naming them "D" &  "E".
>> Problem: Path to Win98SE is no longer correct.
>>
>> Below is a copy of my Boot.ini file, along with a couple of samples from
>> Microsoft.
>> As you will notice, there is no reference to Win98SE in the file, yet 
>> when I
>> remove
>> the partitions on the second disk it boots fine to both systems.
>> Also, when I look at the drives after starting XP, all drive letters are
>> correct,
>> and  the new disk can be used  as normal with drive letters "I" and "J"
>> Help on this would be greatly appricianted.
>>
>>
>> My current Boot.ini file
>> [boot loader]
>> timeout=30
>> default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
>> [operating systems]
>> multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home
>> Edition" /fastdetect /NoExecute=OptIn
>> C:\ = "Microsoft Windows"
>>
>>
>> Sample Boot.ini File
>> This is a sample of a default Boot.ini file from a Windows XP 
>> Professional
>> computer.
>> [bootloader
>> timeout=30
>> default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
>> [operating systems]
>> multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP
>> Professional" /fastdetect
>>
>>
>> This is a sample of the above Boot.ini file after adding another 
>> partition
>> running Windows 2000 Professional.
>> [boot loader]
>> timeout=30
>> default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
>> [operating systems]
>> multi(0)disk(1)rdisk(0)partition(1)\WINDOWS="Windows XP Professional"
>> /fastdetect
>> multi(0)disk(0)rdisk(0)partition(2)\WINNT="Windows 2000 Professional"
>> /fastdetect
> 


Relevant Pages

  • Re: Windows hogging up space
    ... - bad news - doesn't work that way with Windows XP. ... Drives are cheap. ... Is hibernate turned on and do you use that feature? ... You mean to change the size of the C partition? ...
    (microsoft.public.windowsxp.help_and_support)
  • RE: dd for windows and imaging a 40Gb drive
    ... dd for windows and imaging a 40Gb drive ... Imaging a disk to another disk: just be sure the target is empty -- dd ... Imaging a partition to another partition, ... to drives and partitions. ...
    (Security-Basics)
  • Re: Windows wont boot if any partition extends past 120 GB on 250 GB drive
    ... Neither would be able to change anything on the partition. ... "Creation of bootable restore media to restore to drives that can't be restored to from witin Windows" ... will dot pittenger1 at gmail dot com (use this address for large ...
    (microsoft.public.windowsxp.general)
  • Re: NTLDR File is missing Msg upon Windows startup
    ... The option to format with FAT and FAT32 are there. ... use Windows 98 SE Startup Diskette and also BootIt NG program from a Floppy ... It also has the ability to create Partition Images. ... Both Hard Drives, do not need to be partitioned the same, unless you ...
    (microsoft.public.windowsxp.help_and_support)
  • Re: Loaded SP2 now Im in a boot loop...Things to try.
    ... and missed that it would load XP on the highlighted partition. ... had windows install the driver off of the creative ... Windows only cares about windows getting on my drive.. ... then I will swap the drives.. ...
    (microsoft.public.windowsxp.general)