Hard drive is Disk 0 CHANGES to hard drive is Disk 1??? And still works!!!

Discussion in 'Windows 64bit' started by Spin, Apr 8, 2008.

  1. Spin

    Spin Guest

    Running Windows XP Pro 64-bit edition. I notice that my primary hard drive
    is Disk 0. If I add another hard disk to the system, the primary hard drive
    becomes Disk 1! And still works!!! I thought the hard and fast rule was
    that disk 0 ALWAYS stays disk 0 REGARDLESS of whether or not an additional
    hard drive gets installed. The additional drive in my case is a removable
    drive which sits inside a drive bay which replaces the CD-ROM. Am I missing
    Spin, Apr 8, 2008
    1. Advertisements

  2. Well, you are probably right - AND you are probably missing something? If
    your original HD (0) is a SATA drive, which would be reasonable to assume,
    when you add a drive that is IDE/ATA the BIOS enumerates this one before the
    SATA drive. Since SATA is an extensiion of ATA it looks up all IDE
    connections first as it used to and any SATA drives are relegated to second
    place in this regard. The BIOS is smart enough to keep CD drives separate
    and you may somewhere have a setting where you can configure the added HD
    separate from the internal one(s), or different connectors to attach your
    cables. You should read your Motherboard Manual carefully, if you end up
    adding an internal HD later you could have havoc play with your boot order.

    Tony. . .
    Tony Sperling, Apr 8, 2008
    1. Advertisements

  3. Spin

    Spin Guest


    Great answer! The primary drive is SATA and the secondary drive is ATA.
    Your explanation rhymes reasonably!
    Spin, Apr 9, 2008
  4. Spin

    Spin Guest

    Thx for your feedback. I will take this knowledge and build upon it.
    Spin, Apr 9, 2008
  5. Actually, there is another layer (underneath the signature mechanism)
    that creates the Harddisk# directory, this is done by the Disk Class
    driver and the I/O manager when NT is in the early booting stage. These
    disk objects such as \device\harddisk0 are created before the I/O
    Manager calls the IoAssignDriveLetters function which in turn reads the
    registry and assigns drive letters to the NT disk Objects created
    earlier by the Disk Class Driver. It is not unconceivable that the disk
    ordinal number be different in the Disk Manager and that the
    partition(s) on the disk still retain their assigned drive letters.

    John John (MVP), Apr 9, 2008
  6. Spin

    Spin Guest

    Anyway I can tell the system, to enumerate IDE AFTER SATA (instead of the
    default which is IDE first)?
    Spin, Apr 9, 2008
  7. Spin

    Bill in Co. Guest

    Unless such an option exists in BIOS (which seems highly unlikely), I doubt
    Bill in Co., Apr 9, 2008
  8. Like Bill says - any such option will have to sit in the BIOS, but I do not
    think it must be 'Highly Unlikely' - I have more than one machine of
    different brands running that does this, but it is highly likely that you
    should have to be on good friednly terms with your BIOS - you may have an
    option to flash to a newer version, or simply do it the hard way and
    close-read every single word that appears in every single page inside the
    BIOS Setup.

    You may have an IDE sub-section under the Advanced section, if you enter
    this you can see the devices that the machine is currently aware of, and you
    can usually arrange them with the '+' / '-' keys. Your controlling keys may
    vary according to the language of the keyboard - whatever you have will fit
    the english keyboard but the manufacturer usually made provisions for this
    so it boots in a keyboard/language transparant way, you may have to
    experiment there. It's usually not a problem.

    Do Not Make Changes That You Don't Understand!

    For a good starting-point, I would go ahead and turn OFF every single
    setting in the BIOS that you KNOW that you are not going to need, things
    that support devices that are not installed, it's a great exercise and it
    will shorten the time it takes the machine to Boot and it may become more
    stable or robust.

    If you don't have your Motherboard Manual, get it! Most manufacturer's have
    it for download in the BIOS and Driver Support section. When You have it,
    read it and get familiar with it, your digital buddy will thank you for it!

    If it's a Notebook, you may have 'close-to-nothing' that can be changed in
    the BIOS, then you are out of luck, but you may have an option to attach
    and/or remove devices before installing the OS, it will usually remember the
    state it was in when the OS was originally installed! (Vista has changed
    this a bit. . .)

    Log on to the site that has drivers and BIOS updates for download of your
    system - it should have some kind of Forum, register yourself and if it's
    any good, get to be a regular and you'll probably have a selection of
    knowledgeable people helping you out with any issues that are directed
    towards YOUR specific issues.

    Good Luck!

    Tony. . .
    Tony Sperling, Apr 9, 2008
  9. Thank you, JohnJohn!

    I must admit, I was not aware of the actual sequence of what call's what and
    then ends up going where? But taking this into account, and on this level,
    has a tendency to have things getting messy, as this may look like
    conflicting explanations - when they're really overlapping pieces of
    mutually supporting explanations (?). The OS internally enumerates devices
    differently than the BIOS - often starting from (1), but then you have the
    OS software utilities that reads off the BIOS and doesn't make use of the
    internal enumeration. In short - if you are not programming, you're likely
    to have more help from getting to know the BIOS and make inquiries about
    specifics that you don't understand. If you are programming, or an OS
    hard-core troubleshooter, of course, you need to know it all! But you are
    absolutely right, other things could play tricks with the signatures and


    Tony. . .
    Tony Sperling, Apr 9, 2008
  10. You're welcome, Tony.

    I think the information supports what you have explained in your other
    post, the disk object number may change depending on how the information
    is obtained from the BIOS or on what other disks are added to the
    computer. When ntldr starts the boot process it calls on NTDETECT.COM
    to get the hardware information from the BIOS and I think that the disk
    object number assigned by the I/O manager and the Disk Class driver is
    influenced by the order in which NTDETECT.COM enumerates or presents the
    disks to the I/O Manager, or in other words on how the BIOS presented
    the information to NTDETECT.COM in the first place.

    If one were to have only one disk in the computer and by "mistake" place
    it on the Secondary IDE controller and install Windows on this disk,
    this would show up as \device\harddisk0 in the Object Manager. I'm
    almost sure that if you were to later add a disk on the Primary IDE
    controller that the new disk would become \device\harddisk0 and that the
    one on the Secondary controller would become \device\harddisk1, much as
    what you said, re: SATA/IDE. It all depends on how the disks
    information is presented to NTDETECT by the BIOS.

    This change in the disk object number would in no way affect the drive
    lettering, the IoAssignDriveLetters function *always* reads the Mount
    Manager's database in the registry and *always* respects previously
    assigned drive letters, the disk object number is somewhat irrelevant,
    the symbolic link for the drive letter is made to the disk that has the
    proper signature regardless of the device's object number.

    John John (MVP), Apr 9, 2008
  11. Spin

    Bill in Co. Guest

    I stand corrected by assuming this meant some generic checkbox option for
    IDE after SATA, instead of thinking of that ordered list in BIOS!! (well,
    duh to me). :)
    Bill in Co., Apr 9, 2008
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.