There are several selection mechanisms at work.
First, the BIOS locates the HDs containing a valid MBR and
puts them in a HD boot order. At boot time, the BIOS passes
control to the MBR in the HD at the head of the BIOS's
HD boot order. For PATA IDE drives, the *default* HD
boot order is taken from this sequence of positions:
Master on channel 0, Slave on channel 0,
Master on channel 1, Slave on channel 1.
If one of those positions doesn't have a HD with a valid MBR,
the next postion in the sequence is inspected, and the HD boot
order is formed. But this HD boot order can be altered in the
BIOS via keyboard input by the user. Thus, the user can control
which HD's MBR gets boot control by setting the HD boot order.
Second, the partition that the HD's MBR passes control to is the
primary partition that is marked "active" in the HD's partition table.
If there is only one primary partition, it is assumed to be "active"
by the MBR. If there are more than one primary partition, you
can use WinXP's Disk Management utility to mark which one is
"active". The routine that the MBR passes control to is called the
"Boot Sector", and the boot sector finds and passes control
to ntldr, which consults the boot.ini file to see what OS choices
there are.
Third, boot.ini can designate just a default OS for booting, and
it can also designate a whole bunch of OSes as options to boot.
These optional OSes can be located on any HD, in any partition
(primary or extended), and in any folder in the system. The "rdisk()"
parameter specifies the HD, "partition()" specifies the partition, and
the last parameter in the path is the name of the folder. Here,
"rdis(0)" specifies the HD that is at the head of the HD boot order,
and rdisk(1)" specifies the 2nd HD in the HD boot order. If just a
default is to be booted, the single option under the "[operating systems]"
line in boot.ini will match that of the "default=" line. If other OSes
can be booted, their paths will be listed as well under the
"[operating systems]" line.
In the case of your system, The HD containing your WinXP Pro
is on partition 1 of the HD that is at the head of the HD boot order.
This is probably the Master on channel 0, or the SATA HD on
SATA port 0. Your Server 2003 is on the next HD in the HD boot
order, probably the Slave on channel 0 or SATA HD on SATA
port 1. Partition 1 on the WinXP HD contains the boot.ini file
that gets control at boot time. It's default OS is Server 2003.
Your boot.ini file probably looks like this:
[boot loader]
timeout=5
default=multi(0)disk(0)rdisk(1)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows XP Pro"
/noexecute=optin /fastdetect
multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Server 2003" /noexecute=optin
/fastdetect
Here, both OSes are in folders named "WINDOWS" in partition 1
of their respective HDs, and the HD containing the "C:" partition is at
the head of the HD boot order and it contains the above boot.ini file
at C:\boot.ini . The 2nd HD in the HD boot order is specified as
containing the default OS (Server 2003) by "rdisk(1)", and the 1st HD
in the HD boot order is specified as containing the optional OS
(Windows XP Pro) by "rdisk(0)".
You can reverse the default versus optional OS selection by
either:
1) reversing rdisk(0) and rdisk(1) in all 3 paths of the boot.ini file in
partition C: and continuing to dual-boot, or
2) make each boot.ini file in the 2 HDs designate a mono-boot,
and reversing the HDs in the BIOS's HD boot order to select
the OS. You can make the boot.ini mono-boot by using "rdisk(0)"
in the default path and in the single "optional" OS path which
designates the only OS on the HD. Remove the 2nd OS path if
there is one. In this case, each mono-boot boot.ini file would look
like:
[boot loader]
timeout=0
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="[OS name here]"
/noexecute=optin /fastdetect
*TimDaniels*
Jim said:
I have a dual boot system with Windows XP Pro on c drive
and Windows Server 2003 on a separate drive.
As the system boots, it defaults to Windows Server 2003.
If I wish to boot into XP, I have to make a quick selection
to highlight Windows XP Pro on the boot menu. How can
I modify the boot sequence so XP will be the default selection?
I thought this was controlled by the boot.ini file. I searched
(including hidden files) for this file but cannot find it. What
else controls the boot sequence?