Windows CE.NET Version 4.2 - PowerPoint PPT Presentation

1 / 54
About This Presentation
Title:

Windows CE.NET Version 4.2

Description:

No concept of current directory. No support for overlapped I/O ... Scenarios: Cell Phone, PDA, Web Pad. Features: Ethernet, Zero Configuration 802.11/802.1x ... – PowerPoint PPT presentation

Number of Views:107
Avg rating:3.0/5.0
Slides: 55
Provided by: Gle8
Category:

less

Transcript and Presenter's Notes

Title: Windows CE.NET Version 4.2


1
Windows CE.NET Version 4.2
For Israeli Embedded User Group Avi Kcholi
2
Windows CE .NET Design Goals
  • Modular and compact operating system
  • Wireless and wired connectivity
  • Robust real-time capabilities
  • Rich multimedia and multilingual support
  • Strong development tool support

3
What Is New in Windows CE .NET 4.2?
  • Internet Explorer 6.0 for CE
  • Base configurations
  • Digital Media Receiver
  • Enterprise Terminal
  • Gateway
  • Internet Protocol (IP) Phone
  • Display driver enhancements
  • Improved Windows CE .NET Test Kit (CETK) features
  • IP Firewall
  • Four pre-qualified Bluetooth profiles
  • Dial-up Networking Profile
  • LAN Access Profile
  • Object Push Profile
  • File Transfer Profile

4
Basic Configurations
  • PDA or mobile handheld device
  • Variants with our without applications, such as
    WordPad
  • Cell phone/smart phone
  • 160x220 nominal display resolution
  • Enterprise Web Pad
  • Touch-screen user interface and 640x480 or larger
    display
  • Internet appliance
  • Browser-based with a fixed (CRT or LCD) display
    and a keyboard.
  • Digital Media Receiver
  • Playback or store music, video, and other
    electronic media

5
Basic Configurations
  • Digital imaging device
  • Camera, projector, and printer
  • Enterprise Terminal
  • Point of sale, self service kiosks
  • Gateway
  • Connects to the Internet and shares that
    connection with a wired or wireless home network
  • Internet Protocol (IP) Phone
  • VOIP
  • Industrial controller
  • Human Machine Interface (HMI) or Programmable
    Logic Controller (PLC) variants

6
Basic Configurations
  • Tiny Kernel
  • Smallest functional Windows CE image
  • Starting point for the most compact, headless
    devices
  • Custom Device
  • The most fully customizable configuration
  • Allows you to choose from all operating system
    features
  • Also a variant for devices without displays

7
Target Hardware Support
8
Core Operating System Architecture
Applications
Programming Interfaces (Win32, COM, MFC, ATL)
Communications interfaces (Winsock, RAS, TAPI)
GWES
Kernel
Filesys
Networking and Communications System
Device Manager
Device Drivers
OAL
Hardware
9
The OEM Adaptation Layer
  • Layer between the Kernel and the hardware
  • Set of functions related to system startup,
    interrupt handling, power management, profiling,
    timer, and clock
  • Included in BSPs for supported SDBs
  • Coded by OEMs to adapt windows CE to their own
    custom platforms
  • Linked with code provided by Microsoft to build
    the Kernel

10
The Kernel Module
  • Portable across supported processors
  • Kernel is portable as most of the operating
    system is written in C
  • NK.EXE, COREDLL.DLL
  • NK.EXE contains Kernel code and Coredll.dll is
    the operating system core DLL module
  • Saving system resources
  • CE loader is designed to save system resources by
    loading application pages as and when needed and
    by keeping only one physical copy of a DLL
  • Demand paging
  • Loads virtual memory pages into physical memory
    when needed
  • Multiple execute in place regions
  • Allows applications to execute code directly from
    read-only memory

11
Device Driver System
  • Device driver
  • Links an operating system and a device
  • Built-in Drivers vs. Installable Drivers
  • Built-in drivers are installed by the platform
    manufacturer
  • Installable drivers are third-party peripheral
    devices that end users can connect to a Windows
    CE-based platform
  • Native Drivers vs. Stream Drivers
  • All of the device drivers managed by GWES are
    native device drivers
  • Device manager loads stream interface drivers
    when the system boots, if those drivers are
    listed in the registry
  • Monolithic Drivers vs. Layered Drivers
  • Monolithic drivers implement interface directly
    in terms of actions on the device they control
  • Layered drivers separate the implementation into
    two layers

12
The GWES Module
  • Graphics, Windowing, and Event Subsystem
  • Graphic output display and printer
  • User input keyboard, stylus, and mouse
  • Window management message routing
  • Graphic Device Interface (GDI)
  • Is the drawing subsystem of GWES
  • Controls how text and graphics are displayed
  • Uses a device context to store drawing attributes
    for a specified device

13
The Filesys Module
  • The Filesys Module
  • Implements the object store
  • File systems
  • Registry
  • Property Database
  • Substitutes for a hard drive on an embedded drive
  • Resides in ROM, RAM, or both
  • Can have a maximum size of 256 MB

14
The Filesys Module (continued)
  • Storage manager
  • Is responsible for all external storage items,
    including all the file systems and block drivers
  • Installable file systems
  • Can provide access to a floppy diskette, a hard
    drive, a flash file system on a PC Card, or to
    other external storage devices
  • File-shadowing mechanism
  • Allows a file to be stored both in RAM and ROM.
  • Differences from other Windows file systems
  • No letters assigned to file systems
  • No concept of current directory
  • No support for overlapped I/O
  • All files stored in RAM are automatically
    compressed

15
The Filesys Module (continued)
  • Registry
  • Provides a common repository for system settings,
    application data, and user preferences
  • Resides in RAM, if not present in RAM, the
    registry can be reloaded from persistent storage
    or rebuilt from ROM
  • Registry functions specific to Windows CE
  • Property Database
  • Provides a lightweight database management system
  • Accessible using a new set of Win32 API functions
    specific to Windows CE
  • Data stored in a flat model
  • Accessible to ActiveX Data Objects for Windows CE
    (ADOCE)
  • Supports multiple volumes on installable file
    systems

16
Real Time Operating System
  • Bounded interrupt response latency
  • Timer precision configurable (1 millisecond
    default)
  • System timer tick independent of thread quantum
  • Nested interrupt support
  • Priority inheritance
  • Protected virtual memory
  • Synchronization objects

17
Power Management Features
  • Power management features respond to system calls
    for turning the system off or for idling
  • Device level power states, DO-D4
  • D0 Full on Full power with full functionality
  • D1 Low On Slightly reduced functionality,
    lower power and/or performance
  • D2 Standby Partial power with automatic wake
  • D3 Sleep Partial power with device initiated
    wake
  • D4 Off Power off
  • The only device power state that all devices must
    support is D0, full on

18
Advanced Features of Windows CE .NET
  • Networking and Communications
  • Real-Time Communication
  • Multimedia
  • Security
  • Internationalization

19
Networking and Communications
  • Networking and Communications Architecture
  • Wireless Platform Support
  • Component Object Model
  • Additional Networking Features
  • Networking Scenarios

20
Networking and Communications Architecture
21
Wireless Platform Support
  • 802.11 zero configuration and 802.1x
  • Enables roaming with minimal configuration and
    logon using user/password and certificate
  • Bluetooth
  • Supports dial up networking, WLAN access and
    object exchange
  • NDIS 5.1
  • Wireless enhancements, battery status
  • MediaSense
  • Connect/disconnect, roaming in range/out of range
    notifications

22
Component Object Model
  • COM is a platform-independent object-oriented
    system
  • OEMs can choose from the different levels of
    run-time support
  • Minimal COM (MCOM) provides baseline API set
  • COM provides a mid-range implementation of COM
    and OLE automation
  • COM Storage (COM_STG) combines the midrange COM
    implementation with structured storage
    functionality
  • DCOM provides full-featured distributed COM
    implementation
  • Marshalling support

23
Additional Networking Features
  • Object Exchange (OBEX)
  • Infrared Data Association IrDA
  • IEEE 1394 (Firewire)
  • MediaSense
  • Media Access Control (MAC) Bridging
  • Dynamic Host Configuration Protocol (DHCP)
  • Internet Connection Sharing (ICS)
  • Virtual Private Networking (VPN)
  • Windows Sockets 2 (Winsock)
  • Message Queuing (MSMQ)

24
Networking Scenarios
  • Personal Area Networking (home, office)
  • Scenarios PDA, Internet Appliance, Networking
    Printer
  • Features Bluetooth, IrDA, UPnP
  • Local Area Networking (office, factory)
  • Scenarios Thin Client, Enterprise Web Pad,
    Industrial Automation
  • Features Ethernet, DCOM
  • Wireless LAN (office, coffee shop)
  • Scenarios Cell Phone, PDA, Web Pad
  • Features Ethernet, Zero Configuration
    802.11/802.1x
  • Wide Area Networking (WAN) (home, hotel)
  • Scenarios PDA, Internet Appliance, Web Pad,
    Residential Gateway
  • Features TAPI, RAS, PPP, Unimodem, VPN, PPTP

25
RTC Support
  • Real time Audio Communication (VoIP)
  • SIP (Session Initiation Protocol) based
  • Between IP devices peer to peer or through
    server
  • Across gateways to PSTN phones
  • Instant Messaging
  • Presence
  • Contacts
  • Watchers

26
RTC Architecture
27
RTC Scenarios
  • Connectivity combinations
  • CE device-to-CE or XP device
  • CE device-to-PSTN phone
  • CE device-controlled PSTN Phone-to-CE or XP
    device
  • Application requirements
  • Instant Messaging over a Network
  • CE-to-CE or CE-to-XP, no SIP server needed
  • Monitor a Contact's Presence or Control Presence
    Information
  • CE device on a network with an SIP server

28
Multimedia Support
  • DirectDraw
  • Direct3D
  • DirectDVD
  • DirectMusic 7
  • DirectShow 6.1
  • DirectSound 6.1
  • Legacy Video Playback
  • MIDI Playback
  • MP3 Playback
  • MPEG-1 Video Playback
  • Digital Rights Management (DRM)

29
Multimedia Architecture
30
Multimedia Scenarios
  • Stream or play live or recorded audio and video
    media from local or remote locations on mobile or
    fixed devices
  • Possible applications
  • Digital media appliances
  • Web Pads and Internet portals
  • Set-top boxes
  • Telecommunications equipment
  • Industrial control and medical applications
  • Education and training

31
Supported Security Features
  • Trusted environment
  • Certified applications
  • CryptoAPI
  • Protected registry
  • Password control
  • Protected store
  • LDAP Security Model
  • Secure Sockets Layer
  • PPTP
  • PC/SC
  • Secure file system
  • DCOM security
  • 802.11 security

32
SSPI Security Architecture
  • SSPI Security Support Provider Interface
  • Kerberos protocol
  • NTLM protocol

33
Security Scenarios
  • Control access to the device
  • Protect against unauthorized applications
  • Secure data storage and file systems
  • Secure network and internet connections

34
Internationalization
  • Platform localization options
  • Localization vs. Internationalization
  • Changing the language of your operating system
  • Adding locales
  • Selecting codepages

Dont believe your eyes
35
Internationalization (Creating International
Applications)
  • Building for a different Locale
  • Shared source files
  • Understanding Unicode and NLS

36
Internationalization (continued)
  • Common practice for developing international
    software
  • Use a few target locales for initial development
    and testing
  • Resource Localization Strict or Non-strict
  • Translation Tips
  • Avoid using vague words, colloquialisms, jargon,
    acronyms, and abbreviations
  • Use good grammar
  • Avoid dynamic concatenation of different strings
  • Avoid hard-coding file names in a binary file
  • Avoid including text in images and icons
  • International Conventions
  • Locales might have different conventions for
    expressing information
  • Locales might have different keyboard conventions

37
The Windows CE Platform Development Cycle
  • Getting Started Quickly With Platform Builder
  • Taking Advantage of Parallel Development
  • Typical Project Timeline
  • Moving from SDB to Custom Hardware
  • The Iterative Development Process

38
Getting Started Quickly with Platform Builder
  • New Platform Wizard provides a start
  • Select a base configuration for your platform
  • Click initial features
  • Click preconfigured BSP
  • Basic configurations
  • Starting point for the creation of an operating
    system
  • Select from New Platform Wizard

39
Getting Started Quickly with Platform Builder
(continued)
  • CEPC Emulator
  • A virtual target hardware platform on the
    workstation
  • Allows system development to begin without any
    target hardware attached, including applications
    and debugging
  • SDBs and BSPs in Platform Builder
  • Choose the board closest to your own architecture
  • Sample board support packages are provided
  • Develop for the board until your hardware is ready

40
Taking Advantage of Parallel Development
Linear Development Model
Parallel Development Model
41
Typical Project Timeline
Project Complete
Porting Complete
Hardware Stable
Complete
Final Validation
Early Testing
QA
App Dev on H/W
App Development on SDB
Apps
OS Optimization on H/W
OS Customization on SDB
OS
Driver N
Driver B
Porting
Driver A
OAL
Boot loader
Time
42
Moving from SDB to Custom Hardware
  • On a Standard Development Board (SDB) and/or
    Emulation
  • Configure the operating system
  • Build the operating system image
  • Debug the operating system image
  • Generate a Platform SDK
  • Develop your applications
  • Integrate and test
  • On your custom hardware when it is available
  • Create the Board Support Package (BSP)
  • Bootloader
  • OAL
  • Device Drivers
  • Rebuild the system using your new BSP
  • Debug and test on hardware
  • Produce and deploy

43
The Iterative Development Process
44
The Application Development Options
Native Application Model
Managed Application Model
eMbedded Visual Tools
Visual Studio .NETwith Device Extensions
C or C
C or VB .NET
Win32 Applications
Applications for .NET Compact Framework
Compiled
Runtime
Windows CE .NET Operating System
45
The Embedded Visual Tools (Native) Application
Model
  • Based on Win32 API
  • Windows CE subset familiar to Win32 programmers
  • Some APIs specific to Windows CE Database and
    Thread handling
  • Visible and non-visible windows with message
    processors
  • WndProc
  • WinMain
  • When developing a program for Windows CE, you
    must first determine the hardware platform and
    processor on which your program is going to run

46
What is eMbedded Visual C/C?
  • Similar to Microsoft Visual C
  • Special features specific to Windows CE
  • Built in compilers and linkers for supported
    processors
  • Debug tools, remote tools, and platform manager
  • Emulation environment to develop without device
  • API differences between CE and Desktop
  • All redundant WIN32 API functions are removed
  • If the function is part of an API that is not
    supported by Windows CE, you will have to find
    another solution
  • If Windows CE supports the feature, you must find
    functions in Windows CE that can be combined to
    support this feature

47
The eVC Application Development Environment
  • C Run-time Library
  • Retail and Debug versions
  • Subset of the full C library
  • Active Template Library
  • Provides a range of ActiveX controls and COM
    features
  • Componentized to be smaller than MFC
  • Component Object Model
  • Is a fundamental object model on which ActiveX
    controls and OLE are built
  • ActiveX
  • Is a dynamic-link library (DLL) or executable
    (.exe) that contains one or more COM components
  • Microsoft Foundation Class Library (MFC)
  • Complete object-oriented application framework

48
(No Transcript)
49
Comparing Native and Managed Applications
  • Native Applications
  • Must be rebuilt for each new CPU or Platform
  • Developer manages system resources
  • Can run without extra support files
  • Can access all operating system services and APIs
  • Must be ported to run on desktop systems
  • Support COM, ActiveX programming
  • Managed Applications
  • Built once for all devices
  • Runtime engine manages system resources
  • Require runtime support files (.NET CF)
  • Applications access only the services exposed by
    the CF
  • Run directly on desktop CF without porting
  • Legacy interoperability not supported

50
The Managed Application Model
  • Smart Device Extensions for Visual Studio .NET
    (SDE)
  • Is a Visual Studio integration package which
    plugs into Visual Studio .NET
  • Includes a set of pre-built device profiles
  • Allows you to create applications for Windows CE
    devices using WinForms, ADO .NET, and XML Web
    services
  • Languages all Compile to Intermediate Language
    format
  • C application development
  • Visual Basic .NET application development

51
The Managed Application Model (continued)
  • .NET Compact Framework (CF)
  • Device-side runtime support package for .NET
    application
  • Common Language Runtime (CLR)
  • Execution engine to manage .NET applications
  • Just-In-Time compiler for intermediate language
    format
  • Class Library
  • Form-related classes, Data and XML classes, and
    GDI support
  • True subset of .NET Framework classes

52
Visual Studio .NET
  • Visual Studio 2003 has built in wizard for CE
    devices
  • At present only C and VB application available
  • Supports Emulator and connection to a CE device
    or PocketPC
  • Has extensions for mobile devices

53
Smart Devices Wizard
54
PB 4.2 Demo
Write a Comment
User Comments (0)
About PowerShow.com