Developing your Standard 2009 Device

|
Create a design requirements checklist
|
|
Create a master image build checklist
|
|
Create a test requirements checklist
|
|
In order to ensure you are working with a stable hardware platform, ensure that your hardware accepts Windows XP Professional as the operating system. Also match the operating system version against the version of Windows XP Embedded that you are using. For example, if you plan to use Windows XP Embedded Service Pack 3 (XPE SP3) or Standard 2009, you should first install and test Windows XP Professional SP3.
|
|
Boot Windows XP Professional SP3 on the target device, then Run Target Analyzer Probe (TAP) on the booted device. TAP inspects the registry to identify all hardware devices that were detected during Windows XP Professional Setup.
The above step is important in order to ensure that Target Analyzer Probe obtains a complete hardware component list that can be 100% successfully processed when the TAP output (.PMQ) file is imported into Target Designer. Note that your finished XPE OS image will be specifically tailored for use only with your specific hardware (motherboard).
Save the resulting .PMQ file, for later importing into Target Designer or Component Designer.
Note regarding footprint reduction:
In order to produce a fully functioning device in the shortest time, the first time you build your image do not worry about minimizing the size of the image.
Footprint minimization should occur after proving that your (non-minimized) image is 100% functional. To minimize footprint, rebuild the image from scratch, using a minimal set of hardware components. This way, if any problems develop while building the minimal configuration, you will know the problems are due to inadvertent removal of necessary components. For more details, refer to the Image Footprint Reduction section.
|
|
Develop, debug and test your custom user software and device drivers using XP Professional. Consider componentizing them for Standard 2009 only after getting everything working in XP Professional.
|
|
Import the .PMQ file one of two ways:
Import the .PMQ into a component using Component Designer. Name and save the component, and then you can select it later when you run Target Designer.
Import it directly into a runtime configuration using Target Designer.
|
|
For testing purposes, consider including selected development / tool components (such as Regedit) that are listed in Addenda 1. Table of built-in Windows XP utilities. Also consider which of these components will be useful or necessary when the image needs to be serviced after it has been deployed.
|
|
Choose Minlogon vs. Windows Logon. Minlogon offers a smaller image footprint and faster boot time however it is not recommended for most installations because you cannot create User accounts; all processes must run at the System/machine account level. This imposes functional restrictions for all components or applications that require or are dependent on user accounts.
|
|
Choose file system (FAT, NTFS, UDFS, CDFS). You can include all of them, with a fairly small impact on footprint.
|
|
Implement Per-component review and selection using "Windows Embedded Standard 2009 Components.xls"
|
|
System Cloning Tool component: set cmiResealPhase to 0 (under Settings, set Reseal Phase to Manual) if you plan to modify the image before resealing.
|
|
Determine whether you need to use EWF-RAM, EWF-DISK, EWF-RAM-REG or HORM. Review Chapter 4. Embedded Enabling Features
|
|
If you intend to boot from USB media, include USB Boot 2.0 Update and USB Boot Mass Storage Device Update (or later versions). Include these components ONLY if booting from USB. Remove them if booting from IDE or SATA because USB Boot always marks the first enumerated USB Storage device as fixed type, so the device cannot be safely removed once installed (resulting in corrupted or lost data on the first detected USB Storage device if it is unplugged while the device is running).
|
|
Edit User interface core component settings.
|
|
If desired, develop and configure a Custom shell, but consider initial testing using the default Explorer shell.
|
|
If you desire generic detection of device classes consider including the Generic Device Driver Support component:
Adding Generic Device Driver Support for Device Classes
|
|
Consider adding the Safe Mode Support component, for F8 functionality at boot time:
Adding Safe Mode Support
|
|
Prepare your target hard disk
The diskpart utility is commonly used to prepare disks.
Make sure that the partition is marked as active (use diskpart or run Diskmgmt.msc on an XP Pro system to verify or change this).
Make sure that the boot partition (usually drive C, or the first partition on the first hard disk drive) has a valid Windows XP boot sector. For example, the Windows XP Disk Management tool (diskmgmt.msc) will automatically accomplish this when it is formatted.
Copy your built design files to the target device drive.
Make sure that the boot partition has the necessary Windows XP boot files (these are NTLDR, Ntdetect.com, and Boot.ini).
Make sure that the Boot.ini file has the proper Advanced Risc Computing (ARC) path pointing to the location of the system files.
Make sure that the system files are where you said they would be in the form they need to be (see the Settings section in the topmost node in your Target design)
|
|
If you cannot use Windows XP Professional to format your boot drive, and you must use MS-DOS to format it, you can put a valid Windows XP boot sector on your boot drive by using the Bootprep.exe utility that is included with Standard 2009. Bootprep.exe is located in the Program Files\Windows Embedded\Utilities folder.
|
|
Make sure that the system files have the proper components to support booting. The easiest way to ensure this is to use Tap.exe to discover the hardware on your computer. However, if you have to run Ta.exe, or are adding components manually, you may be missing crucial components. The list of necessary components varies from computer to computer, but the minimum that you need are:
A BIOS component (Standard PC, for example—found under Hardware\Devices\Computers in the left pane of Target Designer)
An integrated drive electronics (IDE) controller (specific to your hardware)
The Primary IDE Channel and Secondary IDE Channel components
The Disk Drive component
|
|
Also make sure that you configure the target drive properties to point to the proper locations.
Click the topmost Settings node, located at the top node in the Target Designer Configuration Editor tree, and then in the right hand pane, expand the Target Device Settings. Here you will find the following:
The System boot location (usually the C drive)
The Windows folder location
The Program Files folder location
The Documents and Setting folder location
If you do not set these properties properly before you build your image, you will have problems booting and problems during the First Boot Agent (FBA) sequence. Inspect the \WINDOWS\FBA\FBALOG.TXT file if you have problems with FBA.
In most typical design scenarios, you should leave all the folders at their default settings, i.e. they all reference drive C:.
If you are booting from one partition (for example, from drive C) but running the system from another partition (for example, from drive D), your run-time image on the development computer will have a DriveD folder that contains the system files, while the root contains the necessary boot files. Make sure that the contents of these folders are copied to the correct drives.
|
|
Fine tune the image user settings if needed. Information in the following link may assist:
Technet: Windows XP
|
|
Ensure your database contains all Security Updates that have been published. First make sure you have installed the latest update package (Windows Embedded Standard 2009 as of this writing). Next, download and install the latest Security Updates found on the OEM Secure web site (ECE). For access to this site, contact the License distributor that you used to obtain your licensed product and runtime keys.
Deploying Microsoft security updates
|
|
If device is attached to a network that is not completely secure, include the Windows Firewall/Internet Connection Sharing (ICS) component and then edit its settings to block ports etc.
|
|
Add antivirus software if necessary; particularly if the device is connected to an unsecure network.
Runtimes and Antivirus Software
|
|
Review Chapter 6. Servicing to ensure your image is designed with built-in Security and Serviceability. Run a sample image update test, to confirm that your update mechanisms work.
|
|
Implement final QA
|