Training Course WDM/WDF Driver Development with KMDF
Our seminars and training courses supply the basic knowledge for modifying existing device drivers or writing complete new drivers.
Title: WDF KMDF Device Driver Development for Windows 7, Vista, XP, Server 2008 and Server 2003.
Basics for device driver development on Microsoft Windows platforms. A workshop with hands on labs and practical samples.
Course Duration: 5 Days
Participants: Experienced application programmers, system software and driver developers, who need a thorough introduction to low level and hardware related software development on Microsoft Windows Platforms.
Summary: The students gain a thorough knowledge about the device driver architecture of the Microsoft Windows operating systems and their kernel mode components. In addition to this they learn concepts and backgrounds of device driver development using the DDK and lots of practical tips and tricks.
Prerequisites:
- Very good knowledge of C and/or C++
- Basic knowledge of Microsoft Visual Studio
- Basic knowledge of Windows system programming
- Basic knowledge of Windows system administration
Day 1:
- Overview Windows Operating System Architecture
- Kernel Mode Components
- DDK Development Environment
- Driver Debugging Host/Target
- Device Installation and .INF Files
- Setup Api / important Registry Keys
- Class Installers, Class Coinstallers, Device Coinstallers
- KMDF Components and Environment
- Building and Installing KMDF Drivers
- DDK Debugging Host/Target
Day 2:
- Introduction to WDF Driver Model and Objects Model
- Structure of a simple Kernel-Mode WDF Driver
- Framework objects, Methods, Properties and Events
- Device Objects and Driver Roles
- Packet driven IO Model and Framework Request Objects
- Handling read, write and device control request
- Canceled and Suspended Requests
- Self-Managed I/O
- Framework Queue Objects
- Integrated I/O Queuing and Cancellation
Day 3:
- Virtual Memory Management Overview
- Buffered IO and Direct IO
- Framework Memory Object
- Plug地単lay Basics, the Device Tree and Driver Layering
- KMDF support on Filter, Functional, Physical and Control device objects
- Plug地単lay State Transitions in Function Drivers
- Framework Integrated Plug地Play Request Handler
- Framework Integrated Power Management Request Handler
- Accessing Plug地単lay Hardware Resources
- Device Enumeration and Startup
- Device Power Down and Removal
Day 4:
- Windows Interrupt Architecture and Thread Scheduling
- Interrupt Objects, Interrupt Service Routines and Deferred Procedure Calls (DPCs)
- Execution Levels (Default Execution Level, Passive Execution Level)
- Synchronization Scopes (Device, Queue, None)
- KMDF Wait Locks and Spin Locks
Day 5:
- Power Management Concepts
- Operating System Directed Power Management (OSDPM) Basics
- System Power States, Device Power States and Power Policy Owner
- Power Management Request Handler
- KMDF Power Policy
- PREfast, Static Driver Verifier (SDV) and Driver Verifier
- Frameworks Verifier, In Flight Recorder and Debugger Extensionsr
