Overview of Windows CE.NET. Overview Overview of Windows CE.NET Core Operating System Architecture...
-
Upload
louise-cole -
Category
Documents
-
view
226 -
download
2
Transcript of Overview of Windows CE.NET. Overview Overview of Windows CE.NET Core Operating System Architecture...
Overview
Overview of Windows CE .NET
Core Operating System Architecture
Advanced Features of Windows CE .NET
Networking and Communications
Real-Time Communication
Multimedia Support and Architecture
Security Features and Architecture
Internationalization
Overview of Windows CE .NET
Windows CE .NET: Design Goals
What is New in Windows CE .NET?
Basic Configurations
Target Hardware Support
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
What Is New in Windows CE .NET?
Internet Explorer 5.5 for CE
Wireless support
Multimedia
Customizable UI
Security Services
Real-time collaboration and communication
Better multi-language support
ClearType
Basic Configurations
PDA or mobile handheld device Variants with our without applications, such as WordPad
Cell phone/smart phone 160x220 nominal display resolution
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.
Media appliance Playback or store music, video, and other electronic media
Digital imaging device Camera, projector, and printer
Basic Configurations (continued) Set-top box
Connects to a TV for display of Internet / media content
Residential gateway
Connects to the Internet and shares that connection with a wired or wireless home network
Industrial automation device
Human Machine Interface (HMI) or Programmable Logic Controller (PLC) variants
Retail Point-of-Sale device
Self-service kiosks, electronic payment terminals, POS terminals
Windows thin client
Minimal remote access terminal with constrained shell and RDP
Basic Configurations (continued)
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
Target Hardware Support
Processor Family CPU SDB BSP Name
ARM Intel SA1110 Intel SA111x Assabet SDB
SA11X0BD
ARM920 ARM Integrator AP SDB
ARMINTEGRATOR
ARM1020
Intel Xscale Intel Lubbock SDB TBD
MIPS NEC Vr4122 NEC DDB-Vr4122 Eagle SDB
EAGLE
NEC Vr5432 NEC DDB-Vrc5476Boston SDB
DDB5476
SHx SH4-7750 Hitachi SH4 Aspen SDB
ASPEN
SH3-7729 Hitachi SH3 Keywest SDB
KEYWEST
x86 P5/P4/PIII/PII/CelK6x/Athlon
CEPC CEPC
NS Geode National Geode Reference Platform
GEODE
Core Operating System Architecture
Hardware
OALDevice Drivers
GWESKernel
Filesys
Applications
Programming Interfaces(Win32, COM, MFC, ATL)
Communications interfaces (Winsock, RAS, TAPI)
Networkingand
CommunicationsSystem
DeviceManager
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
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
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
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
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
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
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
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
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
Advanced Features of Windows CE .NET
Networking and Communications
Real-Time Communication
Multimedia
Security
Internationalization
Networking and Communications
Networking and Communications Architecture
Wireless Platform Support
Component Object Model
Additional Networking Features
Networking Scenarios
Networking and Communications Architecture
WinsockWinsock
Protocol Stacks (TCP/IP, IrDA)Protocol Stacks (TCP/IP, IrDA)
NDIS (LAN, WAN, TR, IrDA)NDIS (LAN, WAN, TR, IrDA)Network DriversNetwork Drivers
TAPITAPI IP HelperIP Helper
SNMPSNMP WNetWNet WinInetWinInet
ApplicationsApplications
Network InterfaceNetwork Interface
SerialSerial
Serial PortSerial Port Ir PortIr Port FIR H/WFIR H/W
COMCOMMSMQMSMQ
RASRAS
PPPPPPUnimodemUnimodem
Web Web ServerServer
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
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
Additional Networking Features
Dynamic Host Configuration Protocol (DHCP)
Internet Connection Sharing (ICS)
Virtual Private Networking (VPN)
Windows Sockets 2 (Winsock)
Message Queuing (MSMQ)
Object Exchange (OBEX)
Infrared Data Association IrDA
IEEE 1394 (Firewire)
MediaSense
Media Access Control (MAC) Bridging
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
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
RTC Architecture
TCP/IPTCP/IP
NDISNDISSerial DriverSerial DriverPPPPPP
HardwareHardware
FTPFTP HTTPHTTPRTPRTPRTC APIRTC API
User AppUser App Instant Instant MessengerMessenger
SIPSIP PINTPINT
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
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)
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
Security Features and Architecture
Which Security Features Are Supported?
SSPI Security Architecture
Security Scenarios
Which Security Features Are Supported?
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
SSPI Security Architecture
SSPI – Security Support Provider Interface
Kerberos protocol
NTLM protocol
Security Scenarios
Control access to the device
Protect against unauthorized applications
Secure data storage and file systems
Secure network and internet connections
Internationalization
Platform localization options:
Localization vs. Internationalization
Changing the language of your operating system
Adding locales
Selecting codepages
Internationalization (continued)
Creating International Applications:
Building for a different Locale
Shared source files
Understanding Unicode and NLS
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