1 / 35

Implications of Migrating from WES2009 to WES7 in Embedded Applications

Implications of Migrating from WES2009 to WES7 in Embedded Applications. Kushal Koolwal Operating Systems R&D Engineer, VersaLogic Corp. kushalk@versalogic.com. Introduction to WES7 Methodology Differences Example: Adding ISA-based Serial Ports Implications Conclusion. Agenda. 2.

zenia
Download Presentation

Implications of Migrating from WES2009 to WES7 in Embedded Applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Implications of Migrating from WES2009 to WES7in Embedded Applications Kushal Koolwal Operating Systems R&D Engineer, VersaLogic Corp. kushalk@versalogic.com

  2. Introduction to WES7 Methodology Differences Example: Adding ISA-based Serial Ports Implications Conclusion Agenda 2

  3. Introduction to WES7 • What is WES7? • Latest in Windows Embedded Family • Based on Windows 7 / Vista technologies • Predecessors of WES7 • WES2009 • XP Embedded • Both based on Windows XP technologies 3

  4. Methodology • Target Platform • Intel Montevina-based embedded board • Intel® Core™2 Duo (64-bit) • I/O: USB 2.0, PS/2, PCIe, PCI, Mini PCIe, ISA, etc. • Configuring and Building Images • WES2009 • WES7 • What are the differences between the two? • Derived Implications 4

  5. 1.0 Installation Requirements 2.0 File System Support 3.0 HAL Independence 4.0 ACPI Support 5.0 Toolkit Driver Support 6.0 Image Building Model FBA vs. Configuration Passes Differences 5

  6. 7.0 Image Deployment Sysprep Image Other Deployment Methods 8.0Log Files 9.0Localization 10.0Image Management WIM, ImageX and DISM 11.0Application Development Dependency Analysis Differences(continued) 6

  7. Differences1.0 Installation Requirements 7

  8. Differences2.0 File System Support 8

  9. Differences3.0 HAL Independence WES7 • No HALs. Just one HAL - Requires APIC and ACPI v2.0+ • Common Image for different architectures • P4 – Single Core • Core™2 • Intel Atom • Separate image for 32-bit and 64-bit architectures • No support for non-ACPI HALs àUpgrade hardware WES2009 • Supports ACPI and non-ACPI HALs • ACPI Uni/Multi-processor PC • Advanced Configuration and Power Interface (ACPI) PC • MPS Uni/Multi-processor PC • Standard PC 9

  10. Differences4.0 ACPI Support 10

  11. Pop Quiz Question: Based on what we just learned about ACPI and APIC support, let’s say for example, why does a x86-based embedded board that does have ACPI and APIC, but still does not support WES7 (though it does support WES2009/XPe)? Answer: ACPI < 2.0 11

  12. Differences5.0 Toolkit 12

  13. Differences5.0 Toolkit: Driver Support • eCore Package (built-in) • Boot critical and bus enumerator drivers • 100 drivers • Must have OS to boot • In-Box Drivers (built-in) • Out-of-Box Drivers (3rd party) • Imported drivers from .cab files • INF-based drivers (.inf, .sys, .dll) 13

  14. Differences5.0 Toolkit:Driver Support (continued) • $OEM$ Folders (3rd party) • MSI-based drivers • Use “/quiet” option 14

  15. WES2009 WES7

  16. Differences6.0 Image Building Model 16

  17. Pop Quiz Question: Do you see any major problems with WES7’s image building process as compared to WES2009/XPe? Answer: Online Build Method - Target boards with low resources (CPU, RAM) will take a very long time to build and deploy image. 17

  18. Differences6.0 Image Building Model: FBA vs. Configuration Passes 18

  19. Differences7.0 Image Deployment WES2009 • Build Image using Target Designer • Make target storage device (hard drive, CompactFlash, etc.) bootable • Attach the storage device on development computer • Copy build directory (C:\Windows Embedded Images) to root of storage device • Attach to target system and boot • FBA runs 19

  20. Differences7.0Image Deployment (continued) WES7 • Create Answer File using ICE • In ICE do Tools àCreate Media à Create IBW Image from Answer File • Option 1: Make a bootable USB Flash Drive (UFD) • Use diskpart.exe. No longer need udfprep.exe. NTLDR vs. BOOTMGR • Copy the contents from Step 2 on the NTFS formatted UFD • Option 2: Make a bootable CD-ROM • Using contents from Step 2, oscdimg.exe create an ISO file • Burn the ISO on a CD/DVD-ROM • Boot from prepared UFD or CD-ROM on target device with storage media attached 20

  21. Pop Quiz Question: What if your target device does not have a USB port or DVD-ROM drive? How do you install WES7? Answer: Use network share! 21

  22. Differences7.0Image Deployment: Sysprep Image * Do not forget to delete the sysprep directory after final deployment 22

  23. Pop Quiz Question: What if your target device does not have any kind of display port i.e. it is a headless system? How do you install WES7? • Answer (maybe*): • AutoUnattend.xml • Offline building • * Lacks headless VGA driver 23

  24. Differences7.0Image Deployment: Other Deployment Methods * Running OS directly for CD/DVD 24

  25. Differences8.0 Log Files • WES2009 Log files • C:\Windows\setupapi • C:\Windows\FBA\FBALOG.txt • WES7 Log files 25

  26. Differences9.0 Localization 26

  27. Differences10.0 Image Management 27

  28. Differences10.0Image Management: WIM, ImageX and DISM • WIM Format • “Hardware-agnostic” file-based format • Can store multiple images in one single WIM file • Only stores the differences between multiple images • Refer to a particular image by indexing • ImageX • Capture WES7 image in WIM format • Imagex /capture C: Z:\WESImages\myimage.wim “Drive C” /verify • Supports WIM format • Imagex /mount Z:\WESImages\myimage.wim 1 C:\WESMountPoint • Deploy from WIM format • Imagex /apply Z:\WESImages\myimage.wim 1 C:\ ; bcdboot C:\windows /s C: • DISM • Primarily a powerful CLI servicing tool • Install/un-install drivers, packages, languages in offline and online mode • Enable/Disable Windows settings

  29. Differences11.0 Application Development • Requirements to include in WES7 image • Same as Windows 7 • Tools like Visual Studio 2008, etc. • Static Dependencies (linked at compile time) • Dynamic Dependencies (Runtime DLLs called) • WES2009 • Chronic problem since XP Embedded days • 3rd party tools - Process Monitor and Dependency Walker • Manually map the required binaries to the components in Target Designer • Time consuming and frustrating process • Lot of noise and unneeded binaries are found during analysis

  30. Differences11.0Application Development: Dependency Analysis • WES7 • Built-in tool – SDA (Static Dependency Analyzer) • .exe, .dll, .cab files • Dynamic Dependency • Process Monitor àPackage Mapper àAnswer File àBuild Image • Automatically mapping of binaries to feature sets. Almost no noise. • Compatible Application Template Website – Microsoft Initiative • Ready-to-use templates like Adobe Flash, Silverlight, Windows Live, etc. • In ICE: File Import àImport Template • Add template to your Answer File. • Community driven - Contribute your own templates

  31. ExampleAdding ISA-based Serial Ports • Windows does not detect automatically • Even if set in BIOS • Download Active Registry Monitor • How about? devcon /r install C:\windows\inf\msports.inf *PNP0500 • Diff registry changes between non-COM port installed system and COM port installed system – AddCOM3.reg • Pay attention to forced IRQ and base Addr. setting • Download psexec.exe from sysinternal tools package • Used to execute/install registry • Create batch file – AddSerial.bat • psexec /accepteula –s reg import C:\AddCOM3.reg • Add RunSynchronousCommand in Answer File • AddSerial.bat 31

  32. Implications • Upgrade to Windows 7 for development station and upgrade target hardware • Watch out for FAT32 support in your target application • Start maintaining a single image for multiple systems • Devices without ACPI are no longer supported • eCore package - critical to booting • Image building always happens on the target device • Image deployed using UFD and CD-ROMs. No need to move target media. 32

  33. Implications(continued) • Various detailed log files at different locations depending on the phase • Streamlined localization process • Add drivers, feature sets, etc. offline and online using DISM, ImageX and WIM • Improved dependency checking – SDA, Package Mapper and template website • Ease of adding drivers and other files to your image using ICE 33

  34. Conclusion • High degree of customization and flexibility • Best of both worlds: Windows 7 + Embedded OS • Reduces time to market – OEMs focus on core competency • Lacks some features – Custom components, headless device support, easy offline building, etc. • Learning curve, but lots of benefits 34

  35. Thank You 35

More Related