569167d547f2b94b3bcda24ca1b776f2.ppt
- Количество слайдов: 35
Module 1: Introduction to Windows CE
u. Overview n Windows CE Design Goals n Comparing Windows CE and Windows NT Embedded n New Windows CE 3. 0 Issues n Windows CE Architecture n Supported Technologies, Libraries, and Tools n System Memory Architecture
u Windows CE Design Goals n Small n Portable n Modular and Compact n Win 32 Compatible n Development Tool Support n Connectivity n Real-time
Small n Typical hardware: 4 MB-8 MB ROM n Smallest footprint: 500 K n Win 32 API is only API n Win 32 API is subset of desktop n Compared to Windows Me (100 MB) or Windows 2000 (500 MB)
Portable n Easy portability to new processors l l Various processors supported l n Most parts of the OS written in C Complete list of supported processors available on Windows CE Web site at http: //www. microsoft. com/Windows/embedded/ce/guide/ processors/proc 30. asp Easy portability to new platforms l OAL layer
Modular and Compact n Modules l Kernel, GWES, Filesys, and Communications n Each module is divided into components n Build an OS image that fits your needs l l n Windows CE configurations: MINKERN, MININPUT, MINCOMM, MINGDI, MINWMGR, MINSHELL, MAXALL, IESAMPLE, MAXDX Components can be added, deleted, or replaced. Execute in place (XIP) from ROM
Win 32 Compatible n Uses the same Win 32 programming model n Uses the same Win 32 PE file format n Supports a large number of Win 32 API functions n Supports other programming interfaces: MFC, ATL and Embedded VB n Advantages: l Ease of porting existing Windows applications l Many developers have good Windows knowledge
Development Tool Support n Major requirement of OEMs and. ISVs n Not restricted to a particular language n Strong development support l Languages: Embedded Visual Basic, Embedded Visual C++ l Tools: Remote debugger, emulators l Technologies: COM, DCOM and MSMQ l APIs: TAPI, Winsock, Crypto. API, NLS API l Libraries: ATL, MFC
Connectivity n Windows CE devices designed for mobility n Support connectivity to desktop PC, other Windows CE devices, and the Internet n Wide variety of communication options and API: Serial (Win 32), LAN (NDIS), Modem (TAPI), Infrared ( Ir. DA), RAS, Winsock, Web Server and Win. Inet n Secure communications at all levels n Synchronization model: Active. Sync n Mobile channels
Real-time n Interrupt Handling l l n Guaranteed maximum latency for highest priority interrupt Nestable (Prioritized) Interrupt Handling Thread Scheduling l Guaranteed maximum latency for highest priority thread l 256 thread priorities l Controllable thread quantum
Comparing Windows CE and Windows NT Embedded Feature Windows CE NTe Memory 500 K - 8 MB+ Footprint Configurability 200 Modules 8 MB- 300 MB API Support Complete Win 32 Security “Best of” Win 32 plus Windows CE-specific enhancements x 86, PPC, MIPS, SHx, ARM Fine-tuned for size derivative of NT Driver Minimal Development Environment Windows NT/ Windows 2000 CPU Support Device Driver 4 Configurations Only x 86 100% compatibility with Desktop Complete NT security module Windows NT/ Windows 2000
u New Windows CE 3. 0 Issues n The Add-on Pack n Porting to Windows CE 3. 0
The Add-On pack Operating System Features n XML Parser (MSXML 2. 0) n Internet Connection Sharing n Point-to-Point Tunneling Protocol (PPTP) n Crypto API 2. 0 n Remote Desktop Protocol (RDP) 5. 0 n Direct. X Support n Windows Media New Tools n Kernel Tracker n Remote System Information n Remote Performance Monitor
Porting to Windows CE 3. 0 n Interruptible ISRs n ISTs and Wait. For. Single. Object n Thread priorities n Thread quantums n Timer granularity n Simpler Priority Inversion Handling n Multiple XIP ROM regions supported n 256 MB max object store
u Windows CE Architecture n Overview of Windows CE Architecture n The Hardware n The OEM Adaptation Layer n The Kernel Module n The Filesys Module n The GWES Module n Communications Support
Overview of Windows CE Architecture ISV, OEM Microsoft Applications Embedded Shell Remote Connectivity Windows CE Shell Services WIN 32 APIs COREDLL, WINSOCK, OLE, COMMCTRL, COMMDLG, WININET, TAPI Kernel Library OAL Boot loader GWES Device Manager File Manager Drivers Device drivers File drivers OEM Hardware Ir. DA TCP/IP Network drivers
The Hardware n Minimum hardware requirements: l l Timer for Scheduler Interrupts l n Supported processor Memory Reference platforms: l HARP l CEPC l Blue Planet
The OEM Adaptation Layer between the kernel and the hardware n Coded by OEMs to adapt Windows CE to their own platforms n Linked with processor-independent code provided by Microsoft to build the kernel n Set of functions related to system startup, interrupt handling, power management, profiling, timer, and clock
The Kernel Module n Portable across supported processors n NK. EXE, COREDLL. DLL n Support RAM and ROM execution n Modules can be compressed in ROM n Demand paging
The Filesys Module n Three types of persistent storage l File systems l Registry l Property Database n The object store is built on an internal heap n The internal heap is transacted to ensure integrity n The internal heap is compressed to save memory
The GWES Module n Graphics, Window, and Event manager l Graphic output (display and printer) l User input: keyboard, stylus, mouse, etc. l Window management: message routing, etc. n GWES is the most componentized Windows CE module n GWES exports only a subset of the Win 32 API functions
Communications Support Applications (PIE, dialing app, etc. ) Win. INET TAPI Unimodem RAS Network Redirector Winsock TCP/IP Ir. DA PPP/SLIP NDIS Installable drivers Serial Driver Ethernet Ir. DA Miniports
The Communications Support (continued) n Desktop Connectivity l l n Active. Sync for data synchronization between a desktop PC and a Windows CE device Remote API (RAPI) as remote procedure call mechanism Mobile Channels
u Supported Technologies, Libraries, and Tools n Support for Development Languages and Tools n Support for Popular Technologies and Libraries n API Differences with Windows 95 / Windows NT n International Support
Support for Development Languages and Tools n Microsoft Platform Builder n Microsoft Embedded Visual Tools 3. 0 n Custom SDK
Support for Popular Technologies and Libraries n Supported Technologies l l Message Queuing Service (MSMQ) l n Component Object Model (COM) Direct. X Supported Libraries l Microsoft Foundation Classes (MFC) l Active Template Library (ATL)
API Differences with Windows 95 / Windows NT n What is missing l l Windows NT security functions, ANSI API, “LE” of OLE printing, USER/GDI l Portions of the large APIs such as TAPI, Sockets, l n Redundant APIs Some flags on very complex APIs What is different l Memory size and power management are special concerns l Device driver model is different l Thread scheduling is simpler l Different product classes have different API sets
International Support n Windows CE supports Unicode strings only n OS ships localized in several European languages l Easy to localize for other European languages n National Language Support (NLS) API n Input Method Editor (IME) n End User Defined Characters (EUDC) n Soft Input Panel
u. System Memory and Architecture n Physical Memory n Virtual Memory n Object Store
Physical Memory 4 GB ROM. 5 MB to 512 MB RAM. 5 MB to 512 MB Physical Memory NK RAMIMAGE RAM–Object Store Program Memory 3 GB 2 GB 1 GB 0 Virtual Address Space
Virtual Memory Reserved 2 GB Memory Mapping (Shared) Slot 32: Process 32. . . Slot 1: Process 1 32 MB Slot 0: Active Process 2 GB
Object Store: File System n File system access is through Win 32 API n No letters assigned to file systems n No concept of current directory n No support for overlapped I/O n Support for installable and remote file systems n Support files stored in ROM l File-shadowing mechanism
Object Store: Registry n Provides a common repository for system settings, application data, and user preferences n Resides in RAM n If not present in RAM, the registry can be: l Reloaded from persistent storage l Rebuilt from ROM n Access to the registry is through the same set of Win 32 API functions as other Windows operating systems n Registry functions specific to Windows CE
Object Store: Databases n Windows CE built-in lightweight database management system n Data stored in a flat model (no hierarchy) n Ideal for storing contacts, notes, and mail n Accessible through a new set of Win 32 API functions specific to Windows CE n Also accessible to Active. X Data Objects for Windows CE (ADOCE) n Supports multiple volumes on installable file systems
Review n Windows CE Design Goals n Comparing Windows CE and Windows NT Embedded n New Windows CE 3. 0 Issues n Windows CE Architecture n Supported Technologies, Libraries, and Tools n System Memory Architecture