Science  People  Locations  Timeline
Index: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Home > Windows Driver Model


 

In computing, WDM stands for Windows Driver Model. It provides a framework for device drivers that operate under Microsoft Windows 98/ME/2000/XP and Server 2003. WDM is a successor of VxD, which was used on older versions of Windows such as Windows 95 and Windows 3.1. WDM drivers are layered in a complex hierarchy and communicate with each other via IO Request Packets, or IRPs.

At a minimum, WDM drivers usually support the follwing:


__TOC__


1 Introducing the Windows Driver Model

Windows 98 defined a unified driver model for the Microsoft Windows® 98 and Windows 2000 operating systems by standardizing requirements and reducing the amount of code that needed to be written. Programmers who are already familiar with Windows NT® 4.0 drivers will recognize most of the features of WDM drivers.

WDM drivers will not run on operating systems earlier than Windows 98 or Windows 2000, such as Windows 95 and Windows 3.1.

By conforming to WDM, drivers can be binary-compatible across Windows 98, Windows 98 Second Edition, and Windows 2000 on x86x86 or Intel 80x86 is the generic name of a microprocessor architecture first developed and manufactured by Intel. The architecture is called x86 because Intel used to give the earliest processors in this family numeric brand names ending in the sequence-based computers. However, subsequent operating systemIn computing, an operating system OS is the system software responsible for the direct control and management of hardware and basic system operations, as well as running application software such as word processing programs and web browsers. In general, ts will contain features not available in preceding versions. WDM is designed to be forward-compatibleForward compatibility is the ability of a system to accept input from later versions of itself. Forward compatibility is harder to achieve than backward compatibility, since, in the backward case, the input format is known whereas a forward compatible sys but not backward-compatibleIn technology (especially computing), backward compatibility has several related but differing meanings: A system is backward compatible if it is compatible with earlier versions of itself, or sometimes other earlier systems, particularly systems it inten. That is, drivers will be compatible with the same or higher-numbered WDM versions. Such WDM drivers will not be able to take advantage of new operating system services, but they will still load and run. Newer drivers running in a lower-version environment will most likely fail while loading. For example, a WDM driver written for Windows 2000 will load and function under Windows XPWindows XP ( codename Whistler is the latest desktop version of the Windows operating system from Microsoft. It was made publicly available on October 25, 2001. Two editions of Windows XP are most commonly available: Windows XP Home Edition which is targe, but cannot take advantage of any new WDM features that were introduced in Windows XP. A WDM driver written for Windows XP will not load under Windows 2000.

WDM driver writers should carefully consider feature-set inclusions. For example, does the driver need to run on different platforms? Will the hardware be widely available, or is it highly specialized and limited in distribution?

Not all hardware meets the requirements of WDM. Video drivers do not support the WDM model and must be written separately, as do certain drivers utilizing VxDs under Windows 98 and some network drivers. Virtual hardware (emulation) and non-standard buses are not supported in a WDM class.

A multi-operating system driver is required to conform to the lowest WDM version of any operating system supported by the driver. For cross-operating system compatibility, WDM driver writers should thoroughly test drivers on all versions of Windows 98 and Windows 2000; operating system differences can produce slightly different driver behavior. Differences are most apparent between single-processor and multi-processor platforms.




Read more »

Non User