Reputation: 41
What is a driver stack in the Windows OS?
I was reading material in NDIS and wan't know what is it.
Upvotes: 4
Views: 5757
Reputation: 3191
One good metaphor if you are familiar with design patterns is the Decorator. As an example I'd take BufferedReader and any other types of reader. So you have your basic (and possibly not very efficient reader) and you want on-the-fly without caring how to make it buffered and speed up performance so you create a BufferedReader that wraps the underlying Reader object.
The concept with driver stacks is similar - you might have your lower level driver which would write characters to device BUT you can attach on top of it another driver which would jumble every character it gets and essentially you have a whole crypto stack. That way the underlying driver doesn't know anything about whole this "magic" that is happening, it is doing exactly what it was made for - writing characters to a block device.
Upvotes: 1
Reputation: 244742
The Windows Driver Model (WDM) uses a layered approach in which a given device is served by at least two drivers: a bus driver and a function driver. A device might also have filter drivers that add value or modify the behavior of the device. The chain of drivers that serve a device is called a driver stack.
(From: http://www.microsoft.com/whdc/archive/wdmoverview.mspx)
Also see: Device Driver Introduction, specifically section 5 on the "Device Driver Stack."
Upvotes: 6