Creating a Mass Deployment Solution
5/10/2007
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:
- A deployment server discovers a newly connected device on the network.
- The server retrieves information that identifies the run-time image to be installed on the device.
- If the specified run-time image is not already installed on the device, the deployment server begins the provisioning process.
- 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
Tasks
Creating a Run-Time Image for Cloning
Booting a Run-Time Image for Cloning
Creating a Master Run-Time Image for Cloning
Customizing the Reseal Phase
Concepts
Cloning Overview
Reseal Phase
How to Create a Run-Time Image for Mass Deployment
Product Updates