Windows Embedded CE System Generation and Drivers (English)

Kursbeschreibung

After the course the participant is able to compile Microsoft system and third party components such as drivers as well as a hardware-specific Windows Embedded CE 6.0 kernel. The participant is thus able to develop a CE system driver and to test it by using the platform builder kernel debugger.

After an overview of the component architecture of the CE OS the attendee will be introduced into the essential steps of the build process. All of the important tools of the up-to-date Platform Builder will be discussed, so that the participant will be able to understand all the phases (WinCE, cesysgen, buildrel, makeimg) of the build process, to adapt the environment parameters and configuration files for his or her necessities and to perform the build process stand alone. The various download- and debugging- techniques will be mediated. In order to create an adapted kernel, there are kernel specific libraries that are necessary. The creation and the export of these SDK libraries is a topic of this course. Furthermore, the addition of a proprietary application into the kernel will be discussed.

First focus is a profound overview to Windows CE 6.0 RTOS its architecture and components, tools for image generation, the complete build process as well as image generation troubleshooting.

Next focus is a short introduction to the multithreading- and synchronization model of Windows CE 6.0. The differences between Windows XP/Vista will be covered as well, on demand. The thereof derived real-time behavior will be discussed intensively.

Another focus is the driver programming. An introduction into memory architecture and the Windows CE model of the dynamic linking (DLL programming) will be provided. After discussion of the device manager the development of stream drivers will be learned. One completely thread safe device driver will be implemented. Other driver types will be referenced as well.

Additional topics that are covered are the BOOT-Loader, the BSP (Board Support Package) and implementing the power management in the driver.

Furthermore, the students will become acquainted with interrupt programming. The interrupt model ISR (Interrupt Service Routine) and IST (Interrupt Service Thread) are covered at full length - that includes the trough this created delays and their significance for the time critical programming. The course ends with the development of a CAN device driver for a CAN module designed by HILF!GmbH. The course exercises can be compiled on the “Device Emulator (DMA)” or on a real hardware. For the “HILF!GmbH Driver Module” CAN, a real x86-hardware with parallel port is required.

The course content is based on:

- MOC Building Embedded Solutions using Windows Embedded CE 6.0 R3

- HILF!-specific course modules like driver development, CAN driver

Themenschwerpunkte

  • Architecture Overview
    • Microsoft Embedded Operating System Choices
    • Characteristics of CE 6.0
    • Features of CE 6.0
  • Tools for Platform Development
    • Visual Studio 2005 & CE 6.0 Installation
    • Windows Embedded CE 6.0 Terminology
    • Introduction to the Build Process
    • Testing and Debugging the OS Design
    • CE 6.0 Directory Structure
  • Operating System Internals
    • System Architecture
    • Memory Architecture
    • Threads and Scheduling
    • Synchronization
    • Interrupt Model
  • Operating System Components
    • The File System
    • The Registry
    • Power Management
    • Internationalization / Unicode
  • The Build System - Platform Builder
    • Directory Structure
    • Build Process
    • The Build Tool
    • The Command Line
    • Troubleshooting the Build System
  • The Board Support Package
    • BSP Overview
    • Platform Common Code
    • BSP Components
    • Misc. Files
    • Creating a New BSP
  • Developing Device Drivers
    • Device Driver Overview
    • Stream Driver Architecture
    • User Mode Driver Framework
    • Handling Caller Buffers
    • Interrupts
    • Loading and Debugging Stream Drivers
  • Introduction to:
    • GUI Programming Model
    • Unicode
  • Customizing the OS Design
    • Catalog Overview
    • The CE 6.0 Shell
    • The SDK
  • Windows CE Real-time Aspects
  • Design/Development of a CAN Driver
  • Application Development
  • Windows CE Drivers
  • WinCE 6.0 Testing

Voraussetzungen

adequate C or C++ knowledge; knowledge about OS architectures are useful; hardware as well as Win32-API knowledge is of advantage; experience with previous WinCE versions is not necessary

Zielgruppe

System, BSP, driver designers and developers who want to generate their own optimized Windows CE system kernel or want to develop driver and kernel mode programs for a purchased Windows CE system kernel, but also for application developers as well as test and QA engineers who want to get a deeper understanding of Windows CE and how it works.

This seminar is the perfect preparation for MCTS exam 70-571

FlexyTrain: Unsere Flexibilität – Ihr Plus

Keinen passenden Termin gefunden? Kein Problem: Bei der Planung unserer Kurstermine bieten wir Ihnen ein Höchstmaß an Flexibilität. Im Klartext: Gemeinsam mit Ihnen finden wir einen geeigneten Termin. Sprechen Sie uns an!