WinCE .
NET & XP Embedded
Overview
Paul Yang
Application Engineer
Applied Computing Group
Advantech Co. LTD.
Agenda
Selecting a Windows Embedded OS
WinCE Design Goals
[Link] Features
WinCE Development
XP Embedded Design Goals
Build and Deploy XPE
Whats XPE and [Link]
Selecting a Windows Embedded OS
WinCE Design Goals
[Link] Features
WinCE Development
XP Embedded Design Goals
Build and Deploy XPE
Selecting a Windows Embedded OS
Feature Windows XP Embedded Windows CE 4.2
Disk Space 5MB - 200 KB
API Support Full Win32 Best of Win32 plus CE Specific
enhancements
CPU Support X86 x86, MIPS, SHx, ARM, PPC
Device 100% compatibility with XP Fine-tuned for size derivative of
Drivers Professional NT Driver
Real-Time Required 3rd Party Add-Ons Yes
Development Target Designer and Component Platform Builder / eMVT
Tools Designer / Visual Studio
Selecting a Windows Embedded OS
X86 No ARM, MIPS, SHx or x86
X86CPU
CPUArchitecture
Architecture
Only
Only??
Yes
Require Yes requires hard real-time OS
RequireReal-time
Real-time
Support
Support??
No
or via third-party
Using No customized Win32 applications
UsingExisting
ExistingWin32
Win32
Applications
Applications??
Yes
Windows
WindowsXP
XP Either Windows
WindowsCECE
Either
Embedded
Embedded .NET
.NET
Agenda
Selecting a Windows Embedded OS
WinCE Design Goals
[Link] Features
WinCE Development
XP Embedded Design Goals
Build and Deploy XPE
CE Products
Windows CE 1.0
Windows CE 2.x
Windows CE 3.0
Windows CE 3.0 Add-on Pack
Windows CE .NET 4.0
Windows CE .NET 4.1
Windows CE .NET 4.2
Windows CE .NET 5.0 (Macallan Beta 2)
Window CE .Net Design Goals
The robust real-time OS for rapidly building smart mobile devices
Scalable wireless technologies to flexibly
Mobile connect mobile devices into existing
infrastructures
Reliable core OS services for efficiently
Robust enabling the most demanding real-time
embedded designs across a breadth of hardware
Build smart .NET devices and create rich
Smart personalized experiences that span devices, PCs,
servers, and web services
End-to-End toolset for rapidly building smart
Rapid designs on the latest hardware with rich
applications
Agenda
Selecting a Windows Embedded OS
WinCE Design Goals
[Link] Features
WinCE Development
XP Embedded Design Goals
Build and Deploy XPE
Components & Emulator
Graphical UI for adding / removing components
Drag and drop component features
Dependencies automatically handled
Emulator
Target Emulator like any hardware platform
Runs in a desktop window
Skinnable to reflect your product
Board Support Packages
Available for a Selection of CPUs
Design flexibility
4 Major CPU architecture families
ARM/SA/XScale, MIPS, SH, x86
Over 2000 CPU types
10 integrated Board Support Packages
Extensible CPU/BSP plug-in model for 3rd party BSPs
BSP Wizard, Export Wizard and other PB tools avail
Third parties can install BSPs for their hardware into
Platform Builder
Broader selection of drivers
CPU-native or companion chip (CSP) drivers
Block level storage drivers
ATA/IDE (HDD, CD-ROM, DVD, PC Cards), SD Card
Installable File System Drivers
FATFS, ISO-9660, UDFS, and File filters
IEEE 1394
SBP/2 Storage and AV/C device protocol support
USB Class drivers
Printer, Mass Storage, Remote NDIS (Ethernet only)
Broader selection of drivers
NDIS/Ethernet drivers - 10/100, 802.11, Bluetooth, USB
and UART
DDI/DDHAL Display/Video Drivers
Tvia 5000, MediaQ MQ200, MediaGX Video, ATI XL, FLAT,
S3Virge
DX8 D3D Multimedia Driver
3D Labs Permedia D3D driver
Wave/DSHAL Audio Drivers
MediaGX, Ensoniq, Philips, Unified DX and WAV audio driver
model
Network Connectivity
Personal Area Networking (PAN)
IrDA, Bluetooth
Local Area Networking (LAN)
NDIS 5.1 supporting 802.3 miniport's
802.11, HomePNA etc. emulate Ethernet
RNDIS (enabling USB NIC on a string)
Wide Area Networking (WAN)
Provides infrastructure for packet-switched and dial-up networks
through NDIS
Rich selection of 3rd party solutions for DSL, ISDN, GSM, GPRS,
WCDMA
Wireless Network Connectivity
Security Notifications
802.1x and Extensible Media Sense: Detect roaming
Authentication Protocol & network status
Smart Card
Multiple Network
Roaming Connections
802.11 Zero Config AutoDial
Media Sense
OS Services
OBEX
Communications
Windows Instant Messenger Application
Instant text messaging, presence, notifications and audio (VoIP)
Based on Real Time Collaboration / SIP protocols
Open Communications Platform
Dial Up Networking / Virtual Private Networking PPP, RAS,
PPTP
Extensible Authentication Protocol (EAP)
Winsock 2.0
WINS Name Registration
TCP/IP including TCP/UDP and Multicast
NDIS 5.1
Windows Integration and Home Networking
Easiest Windows Integration
Terminal Services Client RDP 5.1
Includes high-color and redirection of clipboard, serial and parallel ports,
smart card, and audio
Implemented as an ActiveX control for greater flexibility
Integrates with NT server, 2000 server, and XP Pro
Home Networking
Internet Connection Sharing
IP Bridging
RAS, FTP, Telnet (both client and servers)
Web Server
SSL support (for HTTPS)
Supports Active Server Pages (ASP)
User Interface Flexibility
Window Manager and UI technologies
Skinnable Controls
Ability to replace look and feel of common controls like
buttons, check boxes and scroll bars
Separate presentation from functionality
Multi-Monitor support
Dynamic screen reorientation
Ability to rotate the screen in 90 degree increments
ClearType support
Improved text readability on LCD displays
Security
Authentication
Kerberos and MSN/Passport communications
authentication
Credential Manager support certificate based authentication
Smart Card support
Unique device ID
Data Encryption
Protected Store
User data can be encrypted
Communications
SChannel support
Secure content via Digital Rights Management
International support
User configurable multi-language support
Font compression
East Asia fonts only
Compresses fonts for 30 to 50% savings in image size
Decompresses and Caches glyph by glyph for optimum RAM use
and performance
Chinese IME, OS and app support
Japanese IME, OS and app support
Korean IME, OS and app support
IME customizable UI sample for CHT/CHS/JAP/KOR
Multimedia
DirectDraw DirectShow
Drawing surfaces, blting, Media playback
flipping, overlays, alpha DVD - Video
blend, VPEs
DVD navigation and
Direct3D playback, sample player app
D3D 8 real-time 3D rendering
Richest multimedia in the
Wave/DirectSound
embedded market
Unified audio model - mixing,
sample rate conversion, DirectX, Windows Media,
capture MP3
DirectMusic
MIDI, composition
Multimedia
Enhanced WM Player sample
Hosts the Windows Media ActiveX control
Content management, play-lists, DRM enabled
Additional optimized codecs
Audio: WMA v2, WMA v7, WMA v8
Video: MS MPEG-4 v2, v3, WMV v7, WMV v8, MS ISO MPEG-4 v1, v2
Other: Fraunhofer MP3
Digital Rights Management (DRM)
DRM 7 remote license acquisition, PD DRM
Play encrypted audio and video ASF files
Allows copyright owners to encrypt/manage ASF content
Browser
IE for Window CE (IECE)
IE 6.0 class browser
MSXML 3.0
Feature parity with the desktop
.NET Passport Authentication
TV-Style Navigation
Directional Tabbing, Fixed Width Layout
Agenda
Selecting a Windows Embedded OS
WinCE Design Goals
[Link] Features
WinCE Development
XP Embedded Design Goals
Build and Deploy XPE
Development Process
Platform Builder EVC / [Link]
SDK
Code
BSP
CE AP
Advantage of Parallel Development
Linear Development Model
Port H/W Customize OS Develop Apps
Parallel Development Model
Develop Apps
Customize OS
Port H/W
Software Development Kit
Expanded SDK Export Wizard
Creates an SDK installation package in MSI format
including documentation
Installs into eVC++ and/or [Link]
Standard SDK
Standard set of common components
Easy to set up in Platform Builder
Enables easier application porting between
device classes
Application Development Options
Native Application Model Managed Application Model
Visual Studio .NET
eMbedded Visual Tools
with Device Extensions
C or C++ C# or VB .NET
Applications for
Win32 Applications
.NET Compact Framework
Compiled Runtime
Windows CE .NET Operating System
Native and Managed Applications
Native Applications Managed Applications
Must be rebuilt for each new Built once for all devices
CPU or Platform Runtime engine manages
Developer manages system system resources
Require runtime support
resources
Can run without extra
files (.NET CF)
Applications access only
support files
the services exposed by the
Can access all operating
CF
system services and APIs Run directly on desktop CF
Must be ported to run on without porting
desktop systems Legacy interoperability not
Support COM, ActiveX supported
programming
Agenda
Selecting a Windows Embedded OS
WinCE Design Goals
[Link] Features
WinCE Development
XP Embedded Design Goals
Build and Deploy XPE
What Is Windows XP Embedded
Design Goals:
Componentized version of Windows XP
Based on the same binaries as retail version of
Windows XP Professional
Choose only features and services you need
Includes additional embedded-enabling features
Enable broad range of devices to utilize rich Windows
XP Professional features
Powerful new Authoring tools
Streamline the end-to-end development process
Windows XP Embedded
Industry-leading security, reliability, and performance
Reliable enable dependable solutions that will stand the test of
time
Based on Windows XP Professional binaries providing
Full-Featured the latest technologies- including rich multimedia and
embedded features- in componentized form
Rich networking and management capabilities
Connected provide seamless integration with PCs, Servers, Web
Services, and other devices
Faster time to market through rich end-to-end
Rapid development tools that streamline OS customization,
device bring-up, and application development
Windows XP Embedded
Robust
Reliable fully protected memory model
Device Driver Rollback
Windows File Protection
Driver signing
Full-Featured Secure
Encrypted file system and NTFS
Internet Protocol Security (IPSec)
Smart Card Support
Connected
Kerberos Authentication protocol
Internet firewall
Increased performance
Faster boot and log-on
Rapid Improved resource management
Improved registry performance
Windows XP Embedded
Componentized Windows XP Professional
Reliable Over 10,000 individually selectable OS features,
services, and drivers
Customized, reduced footprint OS
Full Win 32 binary compatibility
Latest multimedia and browsing
Full-Featured Internet Explorer 6
Windows Media Player (WMP) 8
DirectX 8
Connected Latest hardware and device support
USB, IEEE 1394, PnP, UDF 2.01
Granular power management with full ACPI
2.0 support
Rapid Easily localization with Multi-lingual User
Interface (MUI)
Windows XP Embedded
Embedded Specific Features
Reliable Flexible boot and storage options
R/W storage devices such as Flash
ROM, Magnetic Disk
Nonvolatile Read-only storage devices
Full-Featured
such as ROM, CD-ROM.
DiskOnChip Flash, ATA & Compact
Flash
Enhanced Write Filter
Connected
Hot Swappable Compact PCI Bus
Device Update Agent
Remote Boot
Watchdog Timers
Rapid Headless Operation
Windows XP Embedded
Rich networking
Legacy support plus Remote Desktop Protocol (RDP),
Reliable
IrDA, 802.11, PPP over Ethernet (PPPoE), UPnP, and
more
Network Location Awareness
Enhanced peer-to-peer networking
Wireless LAN support
Full-Featured Real Time Communications
TAPI 3.1
MSMQ Support
Outlook Express
Connected
Windows Messenger
NetMeeting
Local and Remote management
Built in support for WMI, MMC
Active Directory Client
Rapid
Remote OS Install
Terminal Services
Windows XP Embedded
Fast Design Starts
Reliable Automated hardware analysis and auto-selection
of correct drivers for your device
Design Templates jumpstart development for
common devices
Efficient, Managed Workflow
Full-Featured
Rich component search and filtering capabilities
Intuitive drag and drop UI
Auto-generated task list guides you through
completion of your design
High Performance build environment
Connected
Assisted component authoring- convert your
apps and services into components
Auto-conversion of any device .INF into a
component
Rapid Automated dependency checking and build
process
Rich Embedded Applications
Utilize existing off-the-shelf applications
Full Win32 API support
Little or no porting required
Rapid application development
Use familiar tools to write rich applications
Over 6 million Visual Studio developers worldwide
Visual [Link] supports 21 MS and 3rd party
languages
Windows Embedded Studio
Target Designer
Select from over 10,000 components with ease
Automated dependency checking and task lists
Hosted, high performance build environment for your customized OS
Component Designer
Assisted component authoring for your applications and services
Streamlined authoring with easy addition of files and registry branches to your
component
Automatic conversion of device .INFs to components
Database Manager
Enables your components to be added to Component Database
High performance database management
Target Analyzer
Automated analysis of your target hardware
Facilitates auto-generation of base OS configuration supporting your target hardware
Building and Deploying XPE
Target Analyzer Process Overview
Target Designer
Base OS configuration
Auto-generated
Add Features to Add your components: Check
Base OS Config Component Designer Dependencies
>10,000 individual .SLDs contain information for Verify relationships,
components component to build itself: add/delete components
Macro Components Properties, Resources, etc. Build order established
Design Templates Auto-conversion of .INFs Task Lists
Build Process
Ensures components built in right Runtime
order
Allows special case logic and fully
OS Image
scripted build process
Example Device Scenarios
Retail POS Kiosk/ATM
Set-Top-Box Thin Clients
Game Platforms
Gateway/Media Store
Office
Automation
Network Devices
Industrial
Automation
Review
Selecting a Windows Embedded OS
WinCE Design Goals
[Link] Features
WinCE Development
XP Embedded Design Goals
Build and Deploy XPE