Multiboot with Windows Vista
If your computer already has a 32-bit version of Windows installed and you have at least
two disk partitions defined, you can install a clean copy of Windows Vista without disturbing
your existing Windows installation. At boot time, you choose your Windows
version from a startup menu. Although this is typically called a dual-boot system, it’s
more accurate to call it a multiboot configuration, because you can install multiple copies
of Windows.
Understanding the Windows Vista Startup Process
If you’ve worked with multiboot systems in previous Windows versions, including Windows
XP, you’ll need to understand how fundamental changes in the Windows Vista boot
loader change the way you manage multiple operating systems For the purposes of running
Windows Vista, the old Ntldr and Boot ini fi les are no longer used (although they
are called on in a secondary role when you use Windows XP, Windows 2000, or Windows
Server 2003 in a multiboot confi guration with Windows Vista)
The startup process in Windows Vista begins when your computer performs its poweron
self test (POST), which is followed by the POST for each adapter card that has a BIOS,
such as advanced storage adapters and video cards The system BIOS then reads the
master boot record (MBR)—the fi rst physical sector on the hard disk defi ned as the boot
device—and transfers control to the code in the MBR, which is created by Windows Vista
Setup This is where Windows takes over the startup process Here’s what happens next:
1.
The MBR reads the boot sector—the fi rst sector of the active partition—which
contains code that starts the Windows Boot Manager program, Bootmgr exe
2.
The Windows Boot Manager reads the contents of the Boot Confi guration Data
store, which contains confi guration information about all operating systems
installed on the computer It uses this data to build and display the boot menu
3.
When you make a selection from the boot menu, you trigger one of the following
actions:
m If you select an instance of Windows Vista, the Windows Boot Manager
starts the OS loader, Winload exe, from the %SystemRoot%\System32 folder
for that installation
m If you choose the option to resume Windows Vista from hibernation, the
Boot Manager loads Winresume exe and restores your previous environment
m If you choose the Earlier Version Of Windows option from the boot menu,
the Boot Manager locates the volume containing that installation, loads its
Windows NT-style Legacy OS loader (Ntldr exe), and if necessary, displays a
new startup menu drawn from the Boot ini fi le on that volume
Windows Vista starts by loading its core fi les, Ntoskrnl exe and Hal dll, reading settings
from the registry, and loading drivers That’s followed by the Windows Session Manager
(Smss exe), which starts the Windows Start-Up Application (Wininit exe), which in turn
starts the Local Security Authority (Lsass exe) and Services (Services exe) processes, after
which you’re ready to log on
Understanding the boot process can help you to pinpoint problems that occur during
startup For more information, see “Using Advanced Boot Options,” in Chapter 24
fifi confifi fifi defifi fifi Confifi confifi fifi fifi Setting Up Windows Vista 39
Chapter 2
You can create truly elaborate multiboot confi gurations using more than a decade’s
worth of Windows versions But unless you’re running a hardware testing lab, there’s no
good reason to do that The much simpler, smoother alternative is to use virtualization
software to run multiple versions of Windows on virtual hardware that faithfully recreates
the operating environment During the course of researching and writing this book,
we installed Windows Vista in virtual machines to capture details of several crucial tasks
and processes that can’t easily be documented on physical hardware, and we saved many
hours compared to how long those tasks would have taken had we set up and restored
physical hardware Microsoft’s Virtual PC 2007 (http://www.vista-io.com/0206) runs on
all editions of Windows Vista, and Virtual Server 2005 R2 (http://www.vista-io.com/0205)
offers the same capabilities in a package designed to run on Windows Server 2003
VMWare (http://www.vmware.com) also offers excellent virtualization software for use
on desktop Windows machines and servers Using any of these solutions, you can install
even the most ancient Windows version Backing up a machine’s confi guration and restoring
it is as simple as copying a fi le Legally, you’ll need a license for every operating
system you install in a virtual machine If you have a license to use Windows for evaluation
purposes, this option is a life-saver
To add Windows Vista to a system where an existing version of Windows is already installed,
fi rst make sure that you have an available partition (or unformatted disk space)
separate from the partition that contains the system fi les for your current Windows version.
The target partition can be a separate partition on the same physical disk, or it can be
on a different hard disk. If your system contains a single disk with a single partition
used as drive C, you cannot create a multiboot system unless you add a new disk or use
software tools to shrink the existing partition and create a new partition from the free
space. (The Windows Vista Disk Management console, Diskmgmt.msc, includes this
capability; to shrink partitions on a system running an older Windows version, you’ll
need third-party software.) The new partition does not need to be empty; however, it
should not contain system fi les for another Windows installation. Run Setup, choose
the Custom (Advanced) option, and select the disk and partition you want to use for the
new installation.
The Setup program automatically handles details of adding the newly installed operating
system to the Boot Confi guration Data store.
And how do you edit and confi gure the Boot Confi guration Data store? Surprisingly,
the only offi cial tool is a command-line utility called Bcdedit. Bcdedit isn’t an interactive
program; instead, you perform tasks by appending switches and parameters to the
Bcdedit command line. To display the complete syntax for this tool, open an elevated
Command Prompt window (using the Run As Administrator option) and enter the command
Bcdedit -?
For everyday use, most Bcdedit options are esoteric and unnecessary. In fact, the only
option that we remember using more than once during the entire development cycle for
Windows Vista was the command to change the text for each entry in the boot menu.
By default, Setup adds the generic entry “Microsoft Windows Vista” for each installation.
If you set up a dual-boot system using Windows Vista Home Premium and Windows
Vista Business, you’ll be unable to tell which is which, because the menu text will
be the same for each. To make the menu more informative, follow these steps:
1. Start your computer and choose either entry from the boot menu. After startup
completes, make a note of which installation is running.
2. Click Start, type cmd in the Search box, and press Ctrl+Shift+Enter. Click
Continue in the User Account Control box to open an elevated Command
Prompt window.
3. Type the following command: bcdedit /set description “Menu description goes
here” (substitute your own description for the placeholder text, and be sure to
include the quotation marks). Press Enter.
4. Restart your computer and note that the menu description you just entered now
appears on the menu. Select the other menu option.
5. Repeat steps 2 and 3, again adding a menu description to replace the generic text
and distinguish this installation from the other one.
A few startup options are still available from the Startup And Recovery dialog box
(open the System option in Control Panel, click the Advanced System Settings link in
the Tasks pane, and click the Settings button under the Startup and Recovery heading).
As shown on the next page, you can choose which installation is the default operating
system (this is where descriptive menu choices come in handy) and how long you want
to display the list of operating systems. The default is 30 seconds; we typically set this
value to no more than 10 seconds (you can choose any number between 1 and 99). To
set the boot menu so that the default operating system starts automatically, clear the
check box at the left, or enter 0. These options write data directly to the Boot Configuration
Data store.
Setting Up Windows Vista 41
Chapter 2
The syntax of the Bcdedit command is daunting, to say the least. It’s also something
you’re unlikely to use often enough to memorize. Those facts are enough to strongly recommend
using a graphical editor for the BCD store instead. VistaBoot Pro (http://www.
vista-io.com/0207) gets consistently high marks and includes the capability to repair the
Vista boot loader or uninstall it and return to booting from the Legacy OS Boot Loader
(Ntldr.exe)
trOUBLeShOOtInG
You installed a different Windows version and Windows Vista is no longer on
the boot menu
Each time you install a version of Windows, it rewrites the MBR to call its own boot loader
If you install Windows Vista as a second operating system on a PC where Windows XP
is already installed, the Windows Vista boot menu incorporates the options from the older
boot menu But if you install a fresh copy of Windows XP on a system that is already
running Windows Vista, you’ll overwrite the MBR with one that doesn’t recognize the
Windows Vista Boot Loader To repair the damage, open a Command Prompt window
in the older operating system and run the following command from the Windows Vista
DVD, substituting the letter of your drive for
here
:\Boot\ Bootsect.exe –NT60 All
When you restart, you should see the Windows Vista menu To restore the menu entry
for your earlier version of Windows, open an elevated Command Prompt and enter this
command:
Bcdedit –create {ntldr} –d “Menu description goes here”
Substitute your own description for the placeholder text The next time you start your
computer, the menus should appear as you intended
Chapter 2
42 Chapter 2 Installing and Confi guring Windows Vista
How do you remove Windows Vista from a dual-boot installation and restore the Windows
XP boot loader? Enter the following command at a command prompt:
:\Boot\Bootsect.exe –NT52 All
You can now delete all system files from the volume containing the Windows Vista installation
you no longer plan to use. For even more effective removal, use the Disk Management
console in Windows XP to reformat the drive and start fresh.
Hope This Helps