No matter where you install Windows (Win2K or XP or Vista or Win7), it
always installs as TWO pieces: a very large piece and a very small piece.
The big piece (several GBs) goes into the \Windows folder tree in whichever
partition you tell Setup to install it. This could very will be the second
partition on your only HDD, or the 4th partition on your third HDD - or
wherever. But the small piece will ALWAYS go to the System Partition, which
is typically the first partition on your first HDD. Even if another OS
(Vista?) has already install its small piece there, the new OS will install
its own small piece there, overwriting the former version as necessary.
For Vista, the small piece consists of the one file "bootmgr" (no extension)
and a few files in the C:\Boot folder. For WinXP, the small piece is just 3
files: NTLDR, NTDETECT.COM and Boot.ini. In addition, each OS writes its
boot sector code into the first physical sector on that System Partition.
Since the boot sector is not a file, it can't be copied or deleted or
otherwise handled by any normal applications; only special utilities like
bootsect.exe and bootcfg - and Setup.exe from the install CD/DVD - can write
When Vista was installed on your laptop, its Setup wrote bootmgr into that
partition and wrote the boot sector to look for bootmgr. But when you
installed WinXP, even though it put the \Windows folder on the other
partition, as you instructed, it put NTLDR, etc., into the System Partition
(probably Drive C
and then overwrote the boot sector on C: with
instructions to look in C:\ for NTLDR at boot time. This works fine for
booting WinXP, but it completely ignores Vista.
To fix the problem, put the Vista DVD into the drive and reboot from it.
Choose to Repair your Startup. This will save the WinXP boot sector into a
new file, then write the Vista boot code into the boot sector again. Then,
when you reboot, the system will read the Vista boot sector, which will load
bootmgr, which will present the OS menu, from which you can choose to boot
Vista or an "Earlier version of Windows". If you choose Earlier, bootmgr
will step back out of the way and let NTLDR take control to complete the
boot into WinXP.
In my mind, I picture this boot process like the letter "Y". The process
starts with the bottom leg of the "Y", which is in the System Partition
(almost always Drive C
. Then, based on instructions it finds there, it
will branch to Vista or WinXP. But the starting point is always the same.
(Even when you had only Vista, the system was still the same: the boot
process started with the bottom leg of the "Y", but since there was only one
OS, the "Y" looked like an "I". The system still started with the boot
sector, then bootmgr, then the C:\Windows folder holding ntoskrnl.exe and
the rest of Vista. But if Vista is in C: and WinXP is in X:, the path will
either be C:\bootmgr to C:\Windows for Vista, or C:\bootmgr\NTLDR to
X:\Windows for WinXP.)
You broke the Golden Rule of dual-booting: Always install the newest OS
last. Vista knows what to do if it finds WinXP already installed. But
WinXP has no idea what to do with Vista, which didn't exist when WinXP's
Setup.exe was written. Since you broke the rule, you must now boot from the
Vista DVD and let it rewrite the boot sector on C: and put the proper entry
into the BCD so that bootmgr knows that WinXP has been installed since Vista
Setup was run originally.
R. C. White, CPA
San Marcos, TX
Microsoft Windows MVP
Windows Live Mail 2009 (14.0.8064.0206) in Win7 Ultimate x64 RC 7100
"mq15" <firstname.lastname@example.org> wrote in message
> I was using Windows Vista on my laptop. Then I installed WindowsXp on a
> separate drive. I expected my system to be a dual boot system but it
> shows no option for Windows Vista at start up. Please guide me.