As PC users & developers, we are faced with situations where we want to save the current state of the operating system along with its applications. One such situation is when developers have to reproduce a bug in the system/application that is hard to recreate or that occurs only occasionally. The Snapshot feature in Hyper-V is a developer’s dream in this regard- capable of saving the current state of the OS and its applications. Later, a dev can choose to restore to the saved state as many times as possible to work on the hard-to-create OS/Application state.
PC users & developers can now play with installing different applications, tweaking some system settings, editing the registry and easily go back to the previous state of the OS with the cool snapshot feature.
Here are a few scenarios where snapshots are quite handy for Windows Embedded Standard 2011 Developers:
[The following article is authored by one of the Windows Embedded MVPs (Most Valuable Professionals). Our MVPs have a heavy background in Embedded systems and are a great repository of information on Windows Embedded products. We’re providing this space on our team blog as a service to our readers by allowing MVPs to share some of their knowledge with the rest of the community.]
If one is building just a single device, it is certainly not necessary to think about configuration strategies. However, when the device gets rolled out in different versions or if your device is part of a device family, a well designed configuration strategy can help overcome versioning obstacles and save a lot of time.
Separate hardware and software
Windows Embedded Standard 2011 provides a tool called Image Configuration Editor (ICE) to help developers configure the components to be installed on the run time image. The configuration is stored in XML file format and is called an answer file.
Before creating an answer file, you should gather the hardware configuration of the target device by running TAP.EXE. This will generate a PMQ file. For instructions on how to generate a PMQ file, please refer to the “How to Generate a .PMQ File Using Target Analyzer” section in ICE Help.
Let us go through how to create a simple answer file that represents the configuration to be installed on the run time image.
* Update 9/23 – added pictures
During the course of our development of Windows Embedded Standard 2011, we realized that our embedded customers have slightly different needs than Windows Client customers with regard to how devices are serviced. For instance, embedded devices can have very limited disk space, while desktop computers can have hundreds of gigabytes of free space. Embedded devices are often not connected to the internet, while most home and office computers are.
Differences like these can affect the way devices are serviced dramatically, so our team created Package Scanner to help service embedded devices more easily.
It is one of the classic problems in an embedded project: After the successful boot process of the device and the OS one or more applications need to be started to do something useful on the device. This can get complex, because one might have applications that need to be started only once, some need to run all the time, but only in a certain user context and some should be running even when no user is logged on, to name just a few examples.