: Windows Video Display Drivers

This seminar covers display and miniport drivers for video controllers with support for the 2D drawing APIs (GDI).

Level

Intermediate

Audience

Driver developers and hardware engineers responsible for video display devices

Description

The video graphics device driver model is substantially different from the standard Windows device driver model. In this seminar you will learn how to write a video device driver for Windows Server 2003, Windows XP, and Windows 2000. Both the display driver (which is responsible for drawing operations) and the video miniport driver (which handles all non-drawing functions) are covered.

This seminar is recommended not only for driver writers but also for video graphics hardware developers, because understanding how the Windows graphics subsystem operates will facilitate the development of high performance hardware.

Topics

  • Windows graphics architecture

  • Graphics Device Interface (GDI) concepts

  • Graphics driver architecture

  • .INF files for graphics devices

  • Hardware requirements

  • Miniport drivers

  • Display drivers

  • Optimizations

Prerequisites

DRV150, Windows Internals for Driver Developers, or equivalent knowledge and experience

Attendees should understand the basic principles of demand-paged, virtual memory, multitasking operating systems. Attendees should also be familiar with the concepts of I/O device programming (in other words, driver coding on any other operating system or environment) and must have at least a reading knowledge of the C programming language. Prior experience writing display or other drivers for Windows will be helpful, but is not required.

Windows versions

Windows Server 2003, Windows XP, Windows 2000

Duration and formats

4 days with labs
2 days lecture only

Labs

The student will write a display driver that “punts” all drawing operations to GDI (providing a framework that can be used with their own hardware). This display driver will use the existing miniport driver for the target system. A “null” miniport driver will then be written to simulate another video controller in the system.
 

Copyright © 2010 by Azius Developer Training