Download presentation
Presentation is loading. Please wait.
Published byChastity Booth Modified over 8 years ago
1
Windows CE Overview Features & Architecture 11.02.김동혁
2
RT Lab1/24 Windows CE Devices Thin Clients Smartphone ResidentialGateways Set-Top-Box Telematics Smart Display PDAMP3 Internet TV
3
RT Lab2/24 What is Windows CE.NET? Embedded 32-bit, Real-time, Multitasking Operating System Embedded 32-bit, Real-time, Multitasking Operating System – System designed for “small” devices – Virtual Memory, Multithreaded – Completely 32 bit – Real-time performance Win32-based API Win32-based API – Familiar software development tools and SDKs – Legacy APIs removed – Less of a subset every version – Over 2,000 functions
4
RT Lab3/24 What is Windows CE.NET? Highly Componentized Highly Componentized – Delivered as a granular set of components – Use Platform Builder tools to configure image – OEMs define what parts of the OS to use – Over 500 components available Scalable Scalable – Footprint scales with functionality selected Supports Wide Variety of CPU Architectures Supports Wide Variety of CPU Architectures – x86, MIPS, SH 3/4, ARM, XScale
5
RT Lab4/24 The Tools Microsoft Platform Builder Microsoft Platform Builder – Operating System configuration – Board Support Package (BSP) development – Download and Debug of hardware Embedded Visual C++ Embedded Visual C++ – Native C++ development Visual Studio.NET 2003 Visual Studio.NET 2003 –.NET Compact Framework 1.0 (Managed) development
6
RT Lab5/24 Windows CE 5.0 Robust real-time OS Robust real-time OS – Hard Real-Time Kernel, – Robust Memory Management – Highly componentized OS +/-230kB kernel, 350+ selectable components Open Open – Extensive CPU Support: ARM, MIPS, SH4, x86 – Shared Source Access: 2.5M+ lines of source code Customizable, OEM IP protected: no need to share it back Proven Proven – Version 5.0 Familiar & powerful development capabilities : Familiar & powerful development capabilities : – Integrated Development Environment: “ Platform Builder ” – Visual Studio for managed code.Net Compact Framework, easy port from the PC world – Embedded Visual C++ ® (Win 32) Robust & OpenPlatform ExtensibilityEnablingDifferentiation Integrated Multimedia and Middleware
7
RT Lab6/24 Windows CE 5.0 A comprehensive set of integrated middleware and multimedia components enables the rapid development A comprehensive set of integrated middleware and multimedia components enables the rapid development Large set of production quality (50) and sample (200+) device drivers: Large set of production quality (50) and sample (200+) device drivers: – USB 2.0, SD I/O, IEEE1394 – Wireless: Bluetooth, 802.11x, IR Integrated support of networking standards : Integrated support of networking standards : – TCP/IP (v4 and v6), XML, SOAP, SNMP, Peer-to-peer Extensive multimedia support Extensive multimedia support – Media engine: DirectShow – Audio: WMA 9, WM9 pro, Waveform, MPEG 1 audio layer 1 & 2, MP3 – DirectX8 ® API: 2 & 3 D, Direct3D ® mobile Integrated support of Windows Media DRM Integrated support of Windows Media DRM – Windows DRM 10 Robust & ExtensiblePlatform ExtensibilityEnablingDifferentiation Integrated Multimedia and Middleware
8
RT Lab7/24 Windows CE 5.0 Comprehensive Internet applications support Comprehensive Internet applications support – Web Browsing: IE 6, Jscripts, VB Scripts – Full screen, TV Lens: Directional tabbing, disabled vertical scrolling, fixed width layout – Microsoft Passport ® : enables MSN Hotmail ® support – Local E-mail client – IM: Windows Messenger 3rd parties adds-on for even more extensibility: 3rd parties adds-on for even more extensibility: – Java Virtual Machine – Macromedia Flash plug in Robust & ExtensiblePlatform ExtensibilityEnablingDifferentiation Integrated Multimedia and Middleware
9
RT Lab8/24 Kernel Scheduler Two styles of preemptive multitasking. Two styles of preemptive multitasking. – Thread runs until end of quantum. – Thread runs until higher priority thread is ready to run. Round-robin within priority level. Round-robin within priority level. Quantum is defined by OEM and application. Quantum is defined by OEM and application. Priority inheritance to control priority inversion. Priority inheritance to control priority inversion. 256 total priorities. 256 total priorities. – Top 248 can be protected by the OEM.
10
RT Lab9/24 System Calls DLL or EXE call API. DLL or EXE call API. COREDLL provides link between system API and EXE. COREDLL provides link between system API and EXE. System call: System call: – Exception caught by kernel. – Kernel determines which EXE gets the call
11
RT Lab10/24 Windows CE Architecture
12
RT Lab11/24 COREDLL.DLL Has 1600+ Functions Has 1600+ Functions KERNEL KERNEL – Processes and Threads – Synchronization objects – Memory and File mapping – Object Store – files, registry, databases USER USER – Windows, menus – Dialog boxes, property sheets – Cursors, carets
13
RT Lab12/24 COREDLL.DLL GDI GDI – Text, raster, vector output – Palettes – Printing (except on Palm size PC) Multimedia Multimedia – Audio Compression Mgr (AcmDriverID) – Sound (sndPlaySoundW) Encryption API (CryptEncrypt) Encryption API (CryptEncrypt)
14
RT Lab13/24 COREDLL.DLL C-Runtime Functions C-Runtime Functions Remote Access Services (RAS) Remote Access Services (RAS) TAPI (lineOpen) TAPI (lineOpen) Localization Support (GetTimeFormat) Localization Support (GetTimeFormat) Windows Networking (WNet… APIs) Windows Networking (WNet… APIs) CE-Specific APIs CE-Specific APIs – Databases (CeOpenDatabase) – Notifications (CeRunAppAtTime)
15
RT Lab14/24 OS Architecture
16
RT Lab15/24 System Call Flow
17
RT Lab16/24 Address Map...... Slot 1 Slot 0 Slot 2 Slot 3 Slot 32 Kernel Space 0000 0200 0000 0400 0000 0600 0000 0800 0000 3E00 0000 4000 0000 4200 0000 8000 0000 FFFF DLLs Process 2 Process 3 Process 31 Process 32 Act. Process Large Memory Area (memory mapped files) Slot 31 NK “Slot” C200 0000 COREDLL.DLL 0000 0001 0000 Read only data 03FF FFFF Code Read write data reserved Other ROM DLLs Resources Stack (reserved space) Heap (reserved space) Free virtual space XIP DLL space 0200 0000 non-ROM DLLs
18
RT Lab17/24 Execution Code Metadata Question: What is the Compact Framework? Compilation Before installation or the first time each method is called JIT Compiler NativeCode Source Code Language Compiler Assembly Unit of deployment, similar to DLL or EXE with added metadata Saved in cache An assembly can also be pre-compiled as part of deployment
19
RT Lab18/24 Question:.Net Framework CF.NET CF.NET – Provides a common programming model for embedded and smart client applications – Supports XML Web Services Supports XML Web Services – Works seamlessly with Visual Studio.NET
20
RT Lab19/24 Question Windows CE.Net is the best solution? Windows CE.Net is the best solution?
21
RT Lab20/24 Question:Service Components – C/C++ libraries and runtime (exception handling, RTTI) – COM/DCOM – Active Template Library –.NET CF – SNMP – LDAP – Microsoft Message Queuing – MFC – OBEX – SOAP, XML (HTTP, XQL, XSLT, SAX) – SQL Server CE – Shells (console, graphical, skinnable, speech) – Internet Explorer (based on IE 6.0) – Remote Desktop – Viewers (Excel, Word, PowerPoint, Image, and PDF) – Inbox – Windows Messenger – WordPad – MediaPlayer
22
RT Lab21/24 Question: System Call Flow...... Slot 1 Slot 0 Slot 2 Slot 3 Slot 32 Kernel Space 0000 0200 0000 0400 0000 0600 0000 0800 0000 3E00 0000 4000 0000 4200 0000 8000 0000 FFFF DLLs Process 2 Process 3 Process 31 Process 32 Act. Process Large Memory Area (memory mapped files) Slot 31 NK “Slot” C200 0000
23
RT Lab22/24 Question:Framework Size Framework size Framework size – 1.35MB (ROM) on Windows CE.NET Device Running RAM needs Running RAM needs – 1 MB+ (depends on app) Typical application sizes Typical application sizes – 5 - 100 KB – Apps often smaller due to use of platform features in the framework
24
RT Lab23/24 Question: Build Components
25
RT Lab24/24 Q & A
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.