WDM Device Driver Development for Windows Operating Systems

Course

Inhouse

Price on request

Description

  • Type

    Course

  • Methodology

    Inhouse

  • Duration

    5 Days

Suitable for: Attendees must be experienced C/C++ programmers with a good knowledge of working with Visual Studio (Developer Studio) and familiarity with Windows system programming and administration.

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Reviews

Subjects

  • Operating Systems

Course programme

Overview
The course covers the key aspects of the device driver architecture of the Microsoft Windows operating systems, device driver development using the DDK and strategies for designing and implementing device drivers.
This is a taught lab course with heavy emphasis on practical lab work. The split between teaching and lab work is abour 40% teaching and 60% lab work. Although the formal course hours are from 9.00 am to 5 p.m there will be opportunities to work later (till about 7 p.m., apart from the last day)

Course Contents
Overview of the various Microsoft Operating Systems
  • structure of Windows operating systems
Kernel mode components Overview of the registry, the Setup API and Important Registry Keys for Device Driver Developers Overview of Plug'n Play Device Installation
  • .INF files
  • Class installers
  • Class coinstallers
  • Device coinstallers
Overview of the structure and patterns of driver routines
  • Driver data structures
    • Driver Object
    • Device Object
    • Device Extension
  • Buffered I/O vs. Direct I/O
  • Packet driven I/O and I/O request packets (IRPs)
  • Virtual Memory Management issues
  • Mechanisms supporting Plug'n Play
  • Device Tree and Driver Layering
  • Device Object
    • Physical Device Object (PDO)
    • Functional Device Object (FDO)
    • Filter Device Object (FIDO)
  • State Transitions of the Plug'n Play framework in the context of developing WDM drivers
Access Plug'n Play Hardware Resources using HAL and System Busdriver How the Interrupt Architecture fits in with Thread Scheduling
  • IRQL_PASSIVE_LEVEL
  • IRQL_DISPATCH_LEVEL
  • DIRQL
Interrupt Service Routines Deferred Procedure Calls (DPCs) Synchronisation Mechanisms
  • Spinlocks and SMP architectures
  • Executive Spinlocks and Interrupt Spinlocks
  • Dispatcher Objects
  • Executive Resources
  • IRP Queues
  • IRP Cancellation and Cancel Safe IRP Queues
Power Management
  • Overview of power management strategies
  • The Microsoft approach to power management
  • System Power States
  • Device Power States
  • Power Policy Owner

WDM Device Driver Development for Windows Operating Systems

Price on request