Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Windows Driver Model
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
===Device kernel-mode drivers=== With the Windows Drivers Model (WDM) for devices Microsoft implements an approach to [[kernel mode]] drivers that is unique to [[Microsoft Windows|Windows operating systems]]. WDM implements a layered architecture for [[device drivers]], and every device of a computer is served by a stack of drivers. However, every driver in that stack can chain isolate hardware-independent features from the driver above and beneath it. So drivers in the stack do not need to interact directly with one another. WDM defines architecture and device procedures for a range of devices, such as display and the [[network card]], known as [[Network Driver Interface Specification]] (NDIS). In the NDIS architecture the layered network drivers include lower-level drivers that manage the hardware and upper-level drivers that implement network data transport, such as the [[Transmission Control Protocol]] (TCP).<ref name="Vieira">{{Cite book|title=Dependable Computing: 14th European Workshop, EWDC 2013, Coimbra, Portugal, May 15-16, 2013, Proceedings|editor1= Marco Vieira |editor2=Joao Carlos Cunha |publisher=Springer |year=2013|isbn=9783642387890|pages=64}}</ref> While WDM defines three types of device drivers, not all driver stacks for a given device contain all types of device drivers. The three WDM device driver types are:<ref name="Vieira" /> '''Bus driver''': For every [[Bus (computing)|bus]] on the mainboard there is a one bus driver, with the primary responsibility for the identification of all devices connected to that bus and responding to plug and play events. Microsoft will provide bus drivers as part of the operating system,<ref name="Vieira" /> such as [[Peripheral Component Interconnect|PCI]], [[Plug-And-Play|PnPISA]], [[SCSI]], [[USB]] and [[FireWire]]. '''Function driver''': this is the principal driver for a device and it provides the operational interface for a device by handling read and write operations. Function drivers are written by the device vendors, and for their interaction with the hardware they depend on a specific bus driver being present in the Windows operating system.<ref name="Vieira" /> '''Filter driver''': This driver is optional, and can modify the behaviour of a device, such as input and output requests. These drivers can be implemented as lower-level and upper-level filter drivers.<ref name="Vieira" />
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)