Jump to content

Disk Management Displays Drives in Wrong Order


Guest

Recommended Posts

So I recently upgraded to 2 3TB drives and everything was hunky dory in Disk Management. The drive I had on SATA  port 0 was drive 0 and the drive on port 1 was drive 1. I finally received my molex to sata power connector adaptor today and plugged in my old 1TB drives in the correct order and when I looked in Disk Management, I saw this fiasco...

 

post-12166-0-77151000-1420751964_thumb.p

 

Why is Window acting so silly? I'm kinda anal about this sort of thing and want the first port to be the first drive and so on. I finally manged to get Windows to play fair by unplugging everything but the first drive and booting up, plugging in the second drive and booting up and so on until I booted up with all the drives hooked up.

 

So is this something thats just the way Windows acts or is there some trick besides what I did to get them to display in the proper order? 

 

 

 

Link to comment
Share on other sites


OK. Thanks. They say it's a design limitation so I guess we have to live with it.

 

Funny thing is I never remember seeing this behaviour in XP but I could be mistaken. I finally had to make the switch to NT6 because XP wont install on my faster 6GB/s 3TB drives. My old 1TB were only 3GB/s drives with a much smaller cache. 

 

Oh and they did go back to being all over the place after a reboot as the KB article states. Port 0 is 4, port 1 is 3, port 2 is 0 and port 3 is 2.   :thumbdown

Link to comment
Share on other sites

It's because of the 2TB limit. From what I have read it is a failure of the original PC design specification and it's too late to go back.

 

Even NT6 OS's have problems with 2+ TB disks. Windows 7 had some kind of warning when I was installing. It couldn't see all 3 TB's but it did install. Once you're setup'd you can then turn the disks into GTP instead of MBR if you want partitions bigger than 2TB.

Edited by -X-
Link to comment
Share on other sites


It's because of the 2TB limit. From what I have read it is a failure of the original PC design specification and it's too late to go back.
 
Even NT6 OS's have problems with 2+ TB disks. Windows 7 had some kind of warning when I was installing. It couldn't see all 3 TB's but it did install. Once you're setup'd you can then turn the disks into GTP instead of MBR if you want partitions bigger than 2TB.

 

They are TWO separate issues (actually a single issue with two separate possible solutions, both not fully "sound"), let's not mix them together, please.
 
The MBR partition scheme has LBA fields (let's set aside CHS ones that are not used by most modern OS anyway) that are 32bits.
 
This makes any LBA address bigger than 2^32-1=4294967295 become "a suffusion of yellow".
LBA address represent sectors or "blocks", on "normal" traditional media where sectors are 512 bytes each, this means that anything bigger than 4294967295*512=2,199,023,255,040 i.e. roughly 2.2 Tb cannot be represented.

The "natural" solution to this would have been (and actually was and actually is) to make media with larger sectors, and the hard disk industry decided that the next bigger sector size that was more convenient (for a number of reasons) was 4096 bytes, and so-called AF or advanced Format disk drives were started being manufactured.

 

With the MBR scheme the maximum addressable space becomes 4294967295*4096=17,592,186,040,320 i.e. roughly 17 Tb.
The issue here is that a number of BIOSes (actually I believe almost all of them) were and are not compatible with a sector size different from 512 bytes (which rules out larger than 2.2 Tb disks from being a bootable device) and the good MS guys (that could have easily fixed OS support for 4 Kb sectored disk drives) for their own reasons decided to NOT fix the (BTW very little issues) on existing operating systems to have them operate with 4 Kb disks (which are only supported "fully" on 8.x and later).
The good disk manufacturers then "invented" the so-called 512e drives, i.e. drives that are actually 4 Kb sectored but that expose themselves as being 512 bytes/sector as a "bridge" solution, and possibly for some "standardization" for mass production, they also started (senselessly) to make AF (i.e. 4 Kb sectored disks) with capacities well below the 2.2 Tb lmit. 

In the meantime the good MS guys got on the (largely senseless) UEFI/EFI/GPT bandwagon, and still in the meantime SSD's (that rarely exceed 512 Gb in size) became popular/available.

Facts:

  1. a modern PC will likely use as boot device a SSD that will be smaller than 2.2 Tb, so the MBR and/or BIOS limits do not apply, or at least do not apply yet.
  2. any other disk device which is not a boot device can be MBR and as large as 17 Tb, as long as it is 4 Kb sectored.
  3. even XP (with some exceptions mainly related to Disk Manager) has no real issues with 4 Kb sectored devices, if they are not used to contain the boot or system partition (i.e. they are used as Data storage, which is what such large disk devices should be used for), the good guys that designed filesystems were smart enough :thumbsup to forecast the need - before or later - to change the size of the sector size.

Lies :w00t::ph34r: or half-lies you have been told in the last few years:

  1. you need GPT (and not MBR)
  2. you need UEFI (and not BIOS)
  3. there is a limit of 2.2 TB with the MBR scheme, loop to #1 above

The reality is that the good MS guys intentionally (most probably to push the EFI/UEFI and consequently GPT, both specifications they however do not fully respect) avoided to provide proper support on the OS side to the initiative of the hard disk manufacturers (which could have been by itself a "good enough" solution to the 2.2 Tb limit) on the other hand the good guys that wrote the EFI/UEFI specifications did their best to prevent the use of GPT disks on BIOS (particularly to make them bootable on BIOS, which is actually perfectly possible, with a few little tricks), the net result being the current mess and misinformation.

 

 

jaclaz

 

 

 

 


 

Link to comment
Share on other sites

Thanks. It's all a bit confusing for me to digest fully right at the moment but I appreciate the explanation.

 

I do plan on getting an SSD eventually when I saw just how fast 6 GB/s was compared to my 3 GB/s drives. I was blown away. I can only imaging what an SSD will do. Unfortunately, I'm tapped out at the moment.

 

Let me just ask you this even though you may have explained it and I just understand it...

XP can use up to 17 TB disks natively since it only supports MBR? I know there are third party ways of getting past the 2TB limit but I'm not going that route since its bound to slow things down because of a middleman.

 

EDIT: I reread what you wrote and know now that the answer is no.

 

EDIT 2: No. Wait. Are you saying I can format a partition greater than 2.2 TB without making the disks GPT? How do I do that?

Edited by -X-
Link to comment
Share on other sites

Yes and no. :w00t:

The 2.2 Tb limit is in the 32 bit wide field in the MBR but it only applies to 512 bytes sectors.
Once you get to 4096 bytes sectors there are no issues up to 8 times that size.
NTFS as a filesystem is fully compliant with non-512 bytes sectors, and as as well CHKDSK and FORMAT seem like working fine.

The Disk Manager (and possibly the diskpart) may on the other hand have some problems with them and the use of a third party tool (or of another later NT OS) may be needed.

As well fsutil will not work fully.

As hinted before the issue with BIOS is that most of them are simply badly coded and believe that a device MUST have 512 bytes sectors, once we have removed the BIOS from the equation (as all NT operating systems use a HAL or Hardware Abstraction Layer) the issue may lie in the drivers used by the OS to access the disk.

 

There was a Windows 7 update (that essentially is made out of a bunch of updated disk/port drivers) 

http://support.microsoft.com/kb/2510009/en-us

http://support.microsoft.com/kb/982018/en-us

and one for Vista:

http://support.microsoft.com/kb/2553708/en-us

(but this one is less relevant, as it is mainly about specific ESENT compatibility and an updated fsutil)

 

I guess that we will need to wait and see, right now I believe that some combo hardware+manufacturer drivers have no issues, while other ones may have them (and it is unlikely that the motherboard manufacturer will issue new drivers for XP).

 

jaclaz

Link to comment
Share on other sites

OK. Thanks.

 

With 8K video just around the corner, I can imagine we might be seeing desktop OS's with petabyte drives in not too distant future.

Link to comment
Share on other sites

  • 1 month later...

Used to go thru this a lot wiht Vista and etc, even XP. Windows reorders the drives if ANY hardware changes take place. Just unplugging and plugging drives causes this. Its because it sees it at a different address perhaps or enumerates it to something else. Even though you plugged them into the same SATA channels or IDE spots it just wants to reorder them., so it remembers your OLD hardware settings in the registry, and instead of removing the missing pieces, it instead creates new ones. And it does not automatically reorder anything so instead it just assigns new letters. The original drive letters end up in cyberspace so to speak.

 

(One more reason why Linux Rules in this area, as it has no drive letters that YOU the end user have to deal with. Linux just reassigns the drives every time you boot it, so changes to drive locations it does not care about as it does not store them in a registry). Chalk up 1 for Linux, 0 for Windows.

 

While you were in disk management you could have resolved it rather than going thru the steps you mentioned to get it back. 

 

If you right click on a drive you can change the drive letter right there. Its a 2 step process to get it all re-ordered and one that is painstaking if you have a LOT of drives attached.

 

Basically you take and change drive letter of a D drive to free up the D letter.. Say it shows you have drives from C to F (hard drives) 

 

So if you want all your hard drives to be C, D, E, F and in a particular order etc, you take the D drive and assign it a letter of Z or something. Then you go thru each hard drive and assign them to the once D drive then E then F. You do this by right clicking and then lieft click on Change Drive Letter. A drop down list appears and you can assign the D drive I would pick on the LAST drive like F and assign it to Z.

So you end up then with C D E then you take the  D and E drives and reassign them to whatever letter you want them to be. If they are all the same I would suggest you label each one with a unique name (Rename function here or in explorer) Then take the Z drive and assign it back to F or whatever the last letter remains. If you have to you can also reorder your DVD/CD drives and even reorder letters of the removable drives. Some computers dont have card readers some do. You can reorder everything to the way you like it.

.Then reassign like DVD drives to G and H or whatever letters you like. Assigning them to say K and L gives you room to add more drives in a logical order. That might be overkill however.

 

You can basically reorder anything that Storage Management Snap in sees. Then just a restart after you exit out of drive management and all is well. (Until you once again change out any internal hard drives). 

 

If your installing a lot of CD or DVD software most modern stuff will seek out what it needs to find when installing, as it looks at your drives. if the drives get re-assigned due to hardware changes, then older software MIGHT not find the CD or DVD especially with copy protected names. SO you may want to consider assigning your CD and DVD drives to a high letter like X and Y but that might be overkill. Whatever. But by doing that your almost guarantee no matter what you hook up those drives are so far away from the normal assignments that everything remains working. I only think it would apply to games that exclusively look at your optical drives, etc. Most new games will not care what drive the media is inserted to. 

 

 

 

Link to comment
Share on other sites

Sometimes this problem is due to a bug at the MountedDevices registry key which is not by default fixed by the OS .

You may check this very easily: run Regedit.exe, go to HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices, delete the MountedDevices subkey only and reboot.

No danger at all: the MountedDevices subkey will be automatically rebuilt at reboot according to current drives.

HTH

Link to comment
Share on other sites

Sometimes this problem is due to a bug at the MountedDevices registry key which is not by default fixed by the OS .

You may check this very easily: run Regedit.exe, go to HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices, delete the MountedDevices subkey only and reboot.

No danger at all: the MountedDevices subkey will be automatically rebuilt at reboot according to current drives.

HTH

And the OS will re-assign DRIVE letters (which DO NOT belong to this topic) according to the known MS "lettering rules" depending on the way both DISKs  are enumerated (which is the actual topic at hand) and on the type/order of volumes/partitions in them (which is NOT the topic)

The way DISKs (which is the topic) are enumerated depend essentially by BIOS but in latish (Vista an later OS's) they are in some combination of BIOSes/DISK types pretty much "hectic".

 

Reviewing quickly dictionary:

  1. a DISK is NOT a "drive", a DISK is "the whole thing", i.e. anything which first sector is a MBR (or a GPT), and it is accessed \\?\Device\Harddiskn\DR0 or as \\.\PhysicalDriven (should it be not confusing enough)
  2. a DRIVE is the *whatever* Windows NT  can mount by assigning to it a DRIVE letter to (which is a volume - see mountvol - or a partition - which is also a volume) i.e. *anything- which first sector is a bootsector (or PBR or VBR), and it is accessed as \\.\<drive letter:> (if mounted to a drive letter) or \\?\Volume{GUID} and if residing on a hard disk like device also as \\?\Device\Harddiskn\Partitiono or \\?\Device\HarddiskVolumep

HTHM.

 

jaclaz

Edited by jaclaz
Link to comment
Share on other sites

The way DISKs (which is the topic) are enumerated depend essentially by BIOS but in latish (Vista an later OS's) they are in some combination of BIOSes/DISK types pretty much "hectic".

Hi jaclaz,
 
Your analysis is totally correct.
 
I used the word "drive" as a generic term including everything you call "the whole thing".
 
As you very properly say, the bug most probably is not at the registry but into the computer BIOS. It is anyway difficult to find a solution when you are not able to see the computer with your own eyes.
 
Thinking about other solutions I wonder maybe withdrawing the mainboard battery for a little while, forcing this way the OS to rebuild the BIOS, could eventually work if there's no other hardware problem.
 
Greetings
 
cannie
Edited by cannie
Link to comment
Share on other sites

 
As you very properly say, the bug most probably is not at the registry but into the computer BIOS. It is anyway difficult to find a solution when you are not able to see the computer with your own eyes.
 
Thinking about other solutions I wonder maybe withdrawing the mainboard battery for a little while, forcing this way the OS to rebuild the BIOS, could eventually work if there's no other hardware problem.
 

I think there are TWO (or more) :ph34r: concurring issues, one is how the BIOS enumerates the disks (when compared on how the actual ports are marked on the motherboard) and the other is how the booting OS reads these BIOS mappings and assign them to NT objects and whether these mappings are "constant" or change depending on some BIOS settings and/or by the actual contents of the disk (like -say - silly things in Windows like the "system" - which means "boot" - volume, priority to MBR vs. GPT disks or viceversa, and the like).

 

Example (to simplify), a simpler system with two internal disks, connected - say - to SATA0 and SATA1 ports (as marked on the motherboard).

If in BIOS you select something like "boot from first hard disk" you will likely have this situation in SATA port/BIOS/Windows Disk Manager:

SATA0=DISK 128=DISK 0

SATA1=DISK 129=DISK 1

 

BUT if you select something like "boot from 2nd hard disk" in BIOS, you will likely have this:

SATA0=DISK 129=DISK 1

SATA1=DISK 128=DISK 0

 

AND if you add to the equation (say) a booting from USB device such as a USB stick, it is likely that you will have something *like*

USB0=DISK 128=DISK 0

SATA0=DISK 130=DISK 2

SATA1=DISK 129=DISK 1

OR:

USB0=DISK 128=DISK 2

SATA0=DISK 130=DISK 0

SATA1=DISK 129=DISK 1

OR:

USB0=DISK 128=DISK 2

SATA0=DISK 130=DISK 1

SATA1=DISK 129=DISK 0

 

What  -X- may want to experiment with (provided that it really there is a *need* for this "matching" ports with disk numbers :unsure:) would be to pre-boot to grub4dos and re-map disks in it (which plainly means re-mapping the disks in the BIOS table) and see if the Windows Disk Manager numbering is affected by this.

 

jaclaz

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...