Creating a Mass Deployment Solution

The process by which a mass deployment is made depends on the design of the device onto which the run-time image is to be installed. Because embedded devices are highly individuated, it is impossible to craft a mass deployment solution for use in all production environments. For example, the range of embedded devices includes:

  • Networked and non-networked devices.
  • Devices that boot remotely over a network and devices that boot off of internal media.
  • Devices that boot off of hard disk, flash memory, or CD-ROM.

Even devices of the same type — from retail point-of-sale (RPOS) devices to Windows-based terminal (WBT) devices — can include different hardware components and make use of different Windows feature components and applications in their run-time images.

However, although there is no single solution for mass deployment, the mass deployment processes that Microsoft customers implement are similar. This topic describes the general process that a mass deployment solution might implement.

Typical Mass Deployment Solutions

An infrastructure that supports mass deployment onto networked devices could work as follows:

  1. A deployment server discovers a newly connected device on the network.
  2. The server retrieves information that identifies the run-time image to be installed on the device.
  3. If the specified run-time image is not already installed on the device, the deployment server begins the provisioning process.
  4. The deployment server refers to a script to obtain information that is required for the setup process. The server can use a different script for each available run-time image.

    The best way to perform a mass deployment onto a non-networked device is to clone or flash the storage media with the run-time image during factory production.

Depending on the design of the device, the provisioning process may include tasks such as:

  • Partitioning the hard disk.
  • Formatting the disk for either the FAT file system or the NTFS file system.
  • Installing the run-time image.
  • Completing the First Boot Agent (FBA) process.
  • Installing a post-FBA cloned run-time image onto the device.
  • Booting the device to ensure that the run-time image includes a unique security ID (SID).
  • Booting the device to perform testing through a test harness.

For a networked device, it is also possible to use Windows Preinstallation Environment (Windows PE) to create an installation disc that can be booted remotely to install a new run-time image. For more information about how to use Windows PE and System Deployment Image (SDI) to create a device recovery CD-ROM disc, see How to Create a Device Recovery CD by Using Windows PE and SDI. Deploying a run-time image to a networked device is a relatively simple process with SDI. For information about remote boot, see Remote Boot.

Remote boot can be the foundation not only for installing a run-time image, but also for device servicing. Some Microsoft customers use remote boot technology to first install an operating system, and to later service devices with operating system updates. A DHCP server and script can be combined with Windows PE to create a mechanism that automatically retrieves and installs a specified run-time image on a connected device.

In addition to the tools that are included with Windows XP Embedded, you can build a solution that uses Microsoft resources such as the Microsoft Windows OEM Preinstallation Kit (OPK).

See Also

Cloning Overview | Creating a Run-Time Image for Cloning | Booting a Run-Time Image for Cloning | Creating a Master Run-Time Image for Cloning | Reseal Phase | Customizing the Reseal Phase | Deploy a Run-Time Image | How to Create a Run-Time Image for Mass Deployment | Product Updates

© 2006 Microsoft Corporation. All rights reserved.