| DRV205: Windows Pseudodrivers, Filter Drivers, and Operating System Interfaces |
This seminar describes the required and optional routines of all device drivers, and presents the designs and operating system interfaces commonly used by filter drivers and pseudodrivers. Level Intermediate Audience Developers of device drivers, operating system utilities, and similar software Description When is a driver not a device driver? When it's a pseudodriver: a driver that doesn't control hardware. Kernel mode drivers are the only way to get foreign kernel-mode code into Windows, so pseudodrivers are commonly written to provide "hooks" into operating system interfaces and kernel mode data that are otherwise unavailable to user mode. This seminar also describes filter drivers in detail. Filter drivers are drivers that modify the function of other drivers. We present both kernel mode driver and WDM interfaces for these two types of drivers. Topics Key operating system principles I/O system objects and data structures Required driver routines; a simple device driver Building and debugging drivers Serialization and synchronization issues Timers and timed events Handling buffers Special buffer handling Filter driver interfaces Plug-and-play interfaces Power management interfaces Windows Management and Instrumentation interfaces Using system threads and executive worker threads
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 must have at least a reading knowledge of the C programming language. Familiarity with device driver development on other platforms will be helpful, but is not essential. Windows versions Windows Server 2003, Windows XP, Windows 2000 Duration and formats 5 days with labs Labs This seminar is only offered with hands-on labs. As with our other driver seminars, a lab exercise allowing you to immediately apply the material follows each key point or principle in the lecture presentation. Each exercise builds on the ones preceding. All seminar attendees (both in the labs and lecture-only versions) will of course receive a diskette or CD-ROM with complete, debugged and commented solutions for all of the lab problems.
|