Driver Stack Management
NDIS 6.0 introduced the ability to pause and restart a driver stack. To support the stack management features that NDIS 6.0 provides, you must rewrite legacy drivers.
NDIS 6.0 also introduced NDIS filter drivers. Filter drivers can monitor and modify the interaction between protocol drivers and miniport drivers. Filter drivers are easier to implement and have less processing overhead than NDIS 5.x intermediate drivers. For these reasons, you should use filter drivers instead of filter intermediate drivers.
A driver stack contains the following logical elements:
- Miniport Adapter
A miniport adapter is an adapter instance of an NDIS miniport driver or intermediate driver. The virtual miniport of an intermediate driver is a miniport adapter. NDIS configures the other elements of a driver stack over a miniport adapter after a device becomes available.
- Protocol Binding
A protocol binding is a binding instance of a protocol driver. A protocol binding binds an NDIS protocol driver to a miniport adapter. Multiple protocol drivers can bind to a miniport adapter.
- Filter Module
A filter module is an instance of a filter driver. NDIS can pause a driver stack to insert, remove, or reconfigure a filter module. Filter modules can monitor and modify the behavior of a miniport adapter.
The following topics provide more information about the driver stack, driver states, and driver stack operations:
- NDIS Driver Stack
- Adapter States of a Miniport Driver
- Binding States of a Protocol Driver
- Module States of a Filter Driver
- NDIS Stack Operations