| Component Enhancements in Windows XP Embedded SP2 Feature Pack 2007 |
by Lynda Allen (Oct. 3, 2006)
Foreword: This whitepaper, the first in a series leading up to the Nov. 1 official launch of Windows XP Embedded SP2 Feature Pack 2007, highlights some of the new release's major enhancements, principal of which was to pack more features into a smaller footprint.
Component Enhancements in Windows XP Embedded SP2 Feature Pack 2007
Updating components to improve the developer experience and reduce XPe device bill-of-materials cost through footprint reduction
by Lynda Allen As we approach the final release of Windows XP Embedded SP2 Feature Pack 2007, I thought I would share some of the interesting componentization tasks I have been focusing on during development. These enhancements can be broken down into six buckets: - Footprint reduction -- enabling you to get more of the features you want into a smaller compact flash which can reduce your BOM costs.
- Updates to configurable component settings in Target Designer -- enabling the developer to be more productive when using the tool by configuring greater options offline (before the Windows Embedded runtime is deployed to the device).
- New collection of related components (macro components) -- making it quicker for developers to identify and add all components for a feature set, such as TCP/IP networking.
- Message Box Default Reply component -- providing better support for headless devices(devices with no monitor or screen) .
- Bug fixes -- making many component bug fixes, listening to feedback in the newsgroup and the bug reports the community has been sending to wecrt@microsoft.com
- Security fixes for XPe SP2 -- integrating all previously released fixes into the XP Feature Pack 2007
Footprint
The biggest and most challenging change we made is a reduction of the overall footprint of a large range of Embedded runtimes. To accomplish this, we focused on two areas: - Re-factoring some larger, complex features into smaller, more granular components
- Removing old, unnecessary dependencies
For the re-factoring work, we analyzed the features most commonly included in Embedded runtimes and which had the biggest, negative footprint impact. For each of these features, we then looked at which components depended on the feature and why they depended on the feature (i.e. which binary or binaries they required). We then pulled those binaries out from the large, original feature and created separate components for each of those binaries. In this way the components that depend on these binaries will now just pull in the new, smaller component to satisfy the binary dependency and not have the footprint hit of pulling in the whole, large, original feature. Further, the original "large feature component" will have a new dependency on the new primitive, so if you desired the large feature component you can still feature parity with features in Windows XP Professional.
For example, here are the components that depended on Internet Explorer in XP Embedded SP2:
 (Click image for larger view) After refactoring, the dependency chain for some of these components looks like this:
 (Click image for larger view) It is expected with each new version of the Windows XP Operating System, the XP Embedded component will reflect the latest updates and changes. Often developers are very good at updating their feature components to include the latest dependency changes or new functionality, but there may be times when the original dependencies are no longer valid, and are not removed during this time. This will result in a component still expressing a dependency on another component or feature that is no longer required, and thereby causing footprint bloat.
For this XP Embedded release, we focused on the most visible, commonly used features and identified the static dependencies these components' file resources had. We eliminated those dependencies that were stale.
Configurable settings
Other changes you will see in the new release are the addition of several new configurable settings for components, such as: - Pop-up settings in Internet Explorer
- Additional settings added to Enhanced Write Filter to support Hibernate-Once-Resume-Many functionality
- More user-friendly configurable settings for the User and Administrator Accounts, as well as for the System Cloning Tool component
- Configurable settings now added to more components such as the Dr. Watson Debugger component. The advantages of being able to configure these settings "offline" in Target Designer include saving time and effort after the runtime has been deployed
- Some of the most common configurable options utilized in the User Interface Core have now been checked (selected) by default. These include displaying Run in the Start menu, enabling context menus and showing icons on the desktop.
Headless device support
A new feature component, Message Box Default Reply, makes it easier to suppress pop-up dialogs from the screen and balloons on the tray. This is beneficial for headless devices or "public-facing" devices like cash registers, kiosks, etc.
Macro components
XP Embedded FP 2007 also offers a few new macro components. A macro component is an aggregate of a number of other components and is most commonly used to group like feature components together, such as the Windows Media Player 10.0 Technologies macro component.
Another purpose for a macro component is to group together components that need to be present on a system to support the installation of a particular application. This is the purpose of the two macro components that bring in all the prerequisite components for enabling Microsoft SQL Express 2005 or Microsoft SQL Server Desktop Engine 2000 to be installed after the runtime has been built and deployed.
Another exciting macro component is the Virtual PC 2004 Helper Macro, which aids in building runtimes for deployment to a Virtual PC session. This is great way for XP Embedded developers to test runtime images! It allows you to do all of your investigative work and prototyping that are not dependent on unique hardware, all without leaving the desktop of your development machine. Once your image is honed to the point where all you need is the specific drivers for the device, you can migrate the configuration to that live device for your driver integration development and debugging.
Bug fixes
Not to be forgotten, we have incorporated numerous bug fixes into this latest version. Many of these fixes have addressed things like missing registry resources, incorrect path names, etc. These bugs have been reported by the XP Embedded Test team, Product Support Services and, of course, customers in the field using their TAMs or Microsoft representatives posting to our XP Embedded newsgroup or to the bug reporting alias wecrt@microsoft.com.
Security updates
We have also been sure to roll up all the componentized security updates that have been released to-date. The componentized security updates are created by the Windows Sustained Engineering team and are available bi-monthly on the OEM secure web site.
All in all, XP Embedded FP 2007 is on track to deliver some high quality components that are more robust, more usable, more granular and should make the developer's experience better than before. This is value beyond the new Embedded Enabling Features and improvements to our suite of Tools.
You can find more information about the Windows XPe product at its homepage on MSDN. You can also download a Community Technology Preview version of FP 2007 from the Microsoft Connect Site -- sign up for the CTP using this Invitation ID: 123-BC7M-6GVK.
Copyright (c) 2006 Microsoft Corp. All rights reserved. Reproduced by WindowsForDevices.com with permission.
About the author: Lynda Allen has been a member of Microsoft's Windows XP Embedded Test team for about two years, where her primary responsibility is testing of component integration. This involves ensuring that the components can be deployed on a minimal embedded runtime without any errors, and that the various components "play nicely" together. Lynda is originally from South Africa.
Read the Complete XPe SP2 FP2007 Whitepaper Series
Other Related Stories
(Click here for further information)
|
|
|
|
|
|
|