Navigating Architecture Changes in Windows Vista

9/5/2010 9:44:07 AM

Windows Vista is very different from its predecessors. These differences present a special challenge when you are planning to deploy and use Windows Vista in the enterprise, especially if you want to maximize your return on investment (ROI) and reduce your total cost of ownership (TCO). To help you get the most from Windows Vista, the sections that follow examine the operating system and its key features.

Understanding Modularization and Windows Imaging

Windows Vista features a revolutionary architecture that is both language-independent and hardware-independent. Windows Vista achieves language-independence from its new modular component design and hardware-independence from its new imaging format. In a modular component design, each component is designed as a smaller, independent unit that performs a particular task or function. Thanks to modularization, every component of the operating system, from device drivers to language packs and service packs, can be created as a module that can be selectively swapped in or out to customize the operating system environment.

When you update Windows Vista by adding or removing features, applying hotfixes, or installing service packs, you are simply modifying the set of modules available. And because these modules are independent, you can make these changes without impacting the system as a whole. Because language packs are separate modules as well, you can easily implement different language configurations and don't need separate installations for each language.

Microsoft distributes Windows Vista on media with Windows Imaging Format (WIM) disk images. WIM uses compression and single-instance storage to dramatically reduce the size of image files. Compression reduces the size of the image in much the same way that Zip compression reduces the size of files. Using single-instance storage reduces the size of the image because only one physical copy of a file is stored for each instance of that file in the disk image. Because WIM is hardware-independent, Microsoft can ship a single binary to all its customers around the world: one binary for 32-bit architectures and one binary for 64-bit architectures.

Windows Vista can be installed using either automated or interactive setup. You can automate the installation of Windows Vista in several ways. You can:

  • Create an unattended installation answer file Requires creating an unattended installation answer file. Windows Vista uses a standards-based single-format answer file. This file, called Unattend.xml, is written in the Extensible Markup Language (XML), making it easier to process using standard tools. By creating a custom answer file and then running Setup using this answer file, you can perform unattended installations of computers running Windows Vista. Setup can then install the operating system from a distribution share or from media.

  • Use Sysprep Image-Based Installation Requires running the System Preparation command-line tool (Sysprep.exe) on a computer that you want to act as the master deployment computer, and then creating a disk image of this computer's configuration. Sysprep is stored in the %SystemRoot%\System32\Sysprep folder. The Windows Automated Installation Kit (Windows AIK) includes Windows System Image Manager and XImage to help you use Sysprep for deployments. You use Windows System Image Manager to create answer files for unattended installations. You use XImage to create and manage disk images.

By using WIM as its disk imaging format and taking advantage of the modular design of Windows Vista, XImage significantly reduces the number of disk images that must be maintained. You no longer need to maintain multiple hardware-dependent disk images or multiple language-dependent disk images. Instead, you typically will need only a single disk image for each chip architecture used in your organization. You can then use different installation scripts to customize the operating system installation as necessary.

WIM has other advantages over earlier disk image formats as well. WIM enables you to modify and maintain disk images offline, which means you can add or remove optional components and drivers or perform updates without having to create a new disk image. To do this, you mount the disk image as a folder and then use Windows Explorer or other tools to update, manage, or remove files as necessary.

Windows System Image Manager, XImage, and Sysprep provide several different ways to automate deployment. The basic steps follow:

  1. Set up and configure Windows Vista on a computer not being used for normal operations, and then install and configure any necessary components and applications.

  2. Run Sysprep to prepare the computer for capture. Sysprep removes unique identifiers from the computer and designates it as a master deployment computer. At the end of this process, the computer no longer has identifying information that allows it to be logged onto and used within a domain or workgroup setting.

  3. Use the XImage/Capture option to capture a disk image and store this image on media or in a distribution share. The image can be maintained offline by using the XImage/Mountrw option to mount the image in read/write mode so you can make any necessary changes. Use the XImage/Unmount command to unmount the image when you are finished making changes.

  4. Use Windows System Image Manager to create your unattended installation answer files. You can then create deployment scripts that configure the computer, run Setup using the answer file, and apply the disk image you've previously created.

  5. Run your deployment script to configure the computer and install the operating system.

Understanding the Windows Preinstallation Environment

With Windows Vista, Windows Preinstallation Environment 2.0 (Windows PE 2.0) replaces MS-DOS as the preinstallation environment. Windows PE 2.0 is a bootable startup environment that provides operating system features for:

  • Installation When you install Windows Vista, the graphical tools that collect system information during the setup phase are running within Windows PE.

  • Deployment When a new computer performs a network boot, the built-in Pre-boot Execution Environment (PXE) client can connect to a Windows Deployment Service server, download a Windows PE image across the network, and then run deployment scripts from within this environment.

  • Recovery Windows PE enables you to access and run the Startup Repair Tool if Windows Vista fails to start because of a corrupted system file.

  • Troubleshooting You can manually start Windows PE to perform troubleshooting or diagnostics testing if Windows Vista is experiencing problems that can't otherwise be diagnosed.

Windows PE is modular, extensible, and provides full access to partitions formatted using file allocation table (FAT) and NT file system (NTFS). Because Windows PE is built from Windows Vista components, you can run many Windows Vista applications, work with hardware devices, and communicate across Internet Protocol (IP) networks. Several command-line tools are available in Windows PE, including:

  • DiskPart A management tool for creating and working with disks, partitions, and volumes

  • Drvload A support tool for adding device drivers and dynamically loading a driver after Windows PE has started

  • Net A set of support commands that enables you to manage local users, start and stop services, and connect to shared folders

  • Netcfg A management tool that configures network access

For deployment, you can execute these tools from within configuration scripts to perform key configuration tasks. You can:

  • Use Netcfg to configure network access.

  • Use Drvload to install a driver and use the hardware without restarting the computer.

  • Run DiskPart to partition and format the computer's hard disk.

  • Use NET SHARE to connect to a shared folder containing the Windows Vista Setup files.

  • Run the Windows Vista Setup program to install the operating system.

As with Windows Vista itself, Windows PE can be contained within a WIM disk image. When you store a Windows Vista image in a WIM disk image, the only way to start Windows Vista is to copy the full image to the computer's hard disk. When you store Windows PE in a disk image, however, you can start it directly from the image without having to copy it to the computer's hard disk. This enables you to store Windows PE disk images on bootable media, such as a DVD or USB flash drive, and then start Windows PE directly from that media. The Windows Vista distribution media uses this technique to load Windows PE into RAM during setup of the operating system.

You can load Windows PE into RAM as well, which might be necessary for troubleshooting. When you do this, the Windows PE boot loader creates a virtual RAM disk in memory and then copies a compressed version of Windows PE to the RAM disk. Afterward, the boot loader mounts the RAM disk as if it were a disk drive and starts Windows PE. Running Windows PE from RAM enables you to write temporary files to the virtual RAM disk, which isn't possible when running from read-only media such as a CD. It also enables you to remove the Windows PE media after Windows PE has started, and then insert different media into the computer's CD-ROM or DVD-ROM drive.

When working with Windows PE, keep the following in mind:

  • Windows PE requires a computer with a VESA-compatible display and a minimum of 256 MB of RAM. During startup, if Windows PE can't detect the video settings, it uses a screen resolution of 640 � 480 pixels. Otherwise, it uses the highest resolution possible.

  • Windows PE supports both IPv4 and IPv6. Although you can access shared folders on other computers from Windows PE, other computers cannot access files or folders on a computer running Windows PE.

  • Windows PE always starts with the default drive letter assignments. This means drive letter assignments aren't persistent between sessions.

  • Windows PE doesn't support the Microsoft .NET Framework or Windows On Windows (WOW). This means you cannot use .NET applications on any versions of Windows PE, 16-bit applications on 32-bit versions of Windows PE, or 32-bit applications on 64-bit versions of Windows PE.

  • Windows PE automatically restarts after running for 24 hours. This is meant as a safeguard to prevent Windows PE from being used as a general-purpose operating system.

Understanding the Windows Pre-Boot Environment

Although earlier versions of the Windows operating system use Ntldr,, and Boot.ini to start up the operating system, Windows Vista has an extensible pre-operating system boot environment that can be customized to meet the needs of various firmware interfaces. This boot environment has two key components:

  • Windows Boot Manager Controls the startup experience and enables you to choose which boot application to run

  • Boot applications Load a specific operating system or operating system version

At startup, computers running Windows Vista enter the pre-boot environment prior to the loading of the operating system. The pre-boot environment uses Windows Boot Manager to control the boot experience and determine which boot applications are run. The standard boot application for Windows Vista is the Windows Boot Loader. Windows Boot Loader is responsible for accessing entries in the Boot Configuration Data (BCD) store. Entries in the BCD store contain boot configuration parameters and control how the operating system is started.

The BCD store is used to abstract the underlying firmware, thereby making it easier for Windows Vista to work with new firmware models such as the Extensible Firmware Interface (EFI). BCD also provides the foundation for a variety of new features in Windows Vista, including the Startup Repair Tool and Multi-User Install shortcuts, which can be launched in the pre-boot environment.

The BCD store is contained in a file called the BCD registry file. The BCD registry file is located in the \Boot\Bcd directory of the active partition on BIOS-based computers and in the EFI system partition on EFI-based computers. The BCD store contains multiple entries on most computers. These entries include:

  • One Windows Boot Manager entry. Because there is only one boot manager, there is only one boot manager entry in the BCD store.

  • One Windows Boot Loader application entry for each Windows Vista operating system installed on the computer.

  • One legacy operating system entry.

The legacy operating system entry is not for a boot application. Instead, this entry uses Ntldr and Boot.ini to start up a Windows operating system earlier than Windows Vista. You will use this entry to start up Microsoft Windows Server 2003, Windows XP, and earlier operating systems if they are installed on a computer.

Several administrator utilities are provided to help manage BCD entries, including:

  • Startup And Recovery Used to configure basic startup options

  • System Configuration Used to configure advanced startup options

  • BCDEdit Used to display and manage BCD entries

Startup And Recovery, shown in Figure 1, enables you to select the default operating system to start if you have multiple operating systems installed on your computer. You can also specify time-out values for operating system selection lists and recovery options. To access Startup And Recovery, follow these steps:

  1. Click Start and then click Control Panel.

  2. In Control Panel, click the System And Maintenance category heading link and then click System.

  3. In the System utility, click Advanced System Settings in the left pane.

  4. On the Advanced tab of the System Properties dialog box, click Settings under Startup And Recovery.

Image from book
Figure 1: The Startup And Recovery dialog box.

The System Configuration utility, enables you to control boot options. You can use the boot options to:

  • Set the default operating system and start the operating system in safe mode

  • Boot to the Windows prompt without loading the graphical components of the operating system

  • Force the computer to use standard video graphics adaptor (VGA) display settings

  • Perform other advanced configuration options

Image from book
Figure 2: The System Configuration utility.

To open the System Configuration utility, follow these steps:

  1. Click Start.

  2. Type msconfig.exe in the Search box.

  3. Press Enter.

BCDEdit is an administrative command-line utility that enables you to display and manage BCD entries. You can use BCDEdit to display the contents of the BCD store by completing these steps:

  1. Click Start, point to All Programs, and then click Accessories.

  2. Right-click Command Prompt and then select Run As Administrator.

  3. Type bcdedit at the command prompt.


    Because of changes to the operating system due to User Account Controls, you must run the command prompt with administrator credentials to perform administrative tasks at the command line. If you don't start the command prompt as an administrator, you will be denied permission to run BCDEdit and perform tasks that require administrator credentials.

Example output from BCDEdit is shown as Listing 1. This example output includes three entries: one for Windows Boot Manager, one for the Windows legacy operating system loader, and one for Windows Boot Loader. You can type bcdedit /? at a command prompt to display all the options for using this utility.

Listing 1: BCD store entries displayed using BCDEdit
Image from book
Windows Boot Manager
identifier {bootmgr}
device partition=C:
description Windows Boot Manager
locale en-US
inherit {globalsettings} bootdebug No default {current} resumeobject {0c848f2d-e023-123a-c23b-23435353de20} displayorder {ntldr} {current} toolsdisplayorder{memdiag} timeout 30 Windows Legacy OS Loader ------------------------ identifier {ntldr} device partition=C: path \ntldr description Legacy (pre-Longhorn) Microsoft Windows Operating System bootdebug No Windows Boot Loader ------------------- identifier {current} device partition=D: path \Windows\system32\winload.exe description Microsoft Windows locale en-US inherit {bootloadersettings} bootdebug Yes osdevice partition=D: systemroot \Windows resumeobject {0c32432d-d232-1def-d23a-2342a35432a0} nx OptIn debug No ems No
Top 10
HP Spectre XT Touchsmart Review - Everything Is Fine Except Battery Life (Part 2)
HP Spectre XT Touchsmart Review - Everything Is Fine Except Battery Life (Part 1)
Lenovo Thinkpad Carbon Touch Ultrabook Review (Part 3)
Lenovo Thinkpad Carbon Touch Ultrabook Review (Part 2)
Lenovo Thinkpad Carbon Touch Ultrabook Review (Part 1)
Blackberry 10 OS (Part 3)
Blackberry 10 OS (Part 2)
Blackberry 10 OS (Part 1)
How To Keep High-End Speakers In Good Conditions
How To Use TV As An Audio Converter
Most View
Windows Small Business Server 2011 : Managing User Roles
Canon IXUS 510 HS
Review: Nikon D4 – The master of the dark arts (Part 2)
Sharepoint 2007: Use the My Links to Manage Your Links
Every Cloud...(Part 2) - Mobility & Portability
Searching for Google’s future (Part 1) - Taking the tablets
Dell Inspiron 17R Special Edition - Battery Is A Disappointment
10 Valuable TVs For Your Living Room
Silverlight Recipes : Creating Silverlight Using Ruby, Python, or JScript
Build A Home Theatre PC (Part 2)
The Library In Your Pocket (Part 2) - iOS – iPad, Android – Kobo Vox, Kindle Fire, Binatone ReadMe, Google Nexus 7
Samsung 830
Windows 9 : What to expect - 32-bit support , WinRT & XNA
Programming with DirectX : View Transformations
Securing Your Silverlight Application
Programming the Mobile Web : Mobilizing WordPress and Other CMSs
Aerocool Silent Master Blue
Getting Started with Device Manager
Calendar Plus - Simple And Friendly
Transact-SQL in SQL Server 2008 : New date and time Data Types and Functions