Roadmap for Developing NDIS Drivers
To create a Network Driver Interface Specification (NDIS) driver package, follow these steps:
Step 1: Learn about Windows architecture and drivers.
You must understand the fundamentals of how drivers work in Windows operating systems. Knowing the fundamentals will help you make appropriate design decisions and let you streamline your development process. For more information about driver fundamentals, see Concepts for all driver developers.
Step 2: Learn about NDIS.
For general information about NDIS and NDIS drivers, see the following topics:
Step 3: Determine additional Windows driver design decisions.
Step 4: Learn about the Windows driver build, test, and debug processes and tools.
Building a driver differs from building a user-mode application. For more information about Windows driver build, debug, and test processes, driver signing, and Windows Hardware Certification Kit (HCK) testing, see Building, Debugging, and Testing Drivers. For more information about building, testing, verifying, and debugging tools, see Driver Development Tools.
Step 5: Select the type of NDIS driver you will implement.
For more information about types of NDIS drivers, see Using the Network Driver Design Guide.
Follow the roadmaps for the type of driver.
- Roadmap for Developing NDIS Miniport Drivers
- Roadmap for Developing NDIS Protocol Drivers
- Roadmap for Developing NDIS Filter Drivers
- Roadmap for Developing NDIS Intermediate Drivers
- Roadmap for Developing Native 802.11 Wireless LAN Drivers
- Roadmap to Develop Mobile Broadband Miniport Drivers
- Roadmap for Developing Windows Filtering Platform Callout Drivers
Step 6: Review the Network driver samples in the MSDN Hardware Samples code gallery.
Step 7: Develop (or port), build, test, and debug your NDIS driver.
See the porting guides if you are porting an existing driver:
- Porting NDIS 6.x Drivers to NDIS 6.40
- Porting NDIS 6.x Drivers to NDIS 6.30
- Porting NDIS 6.x Drivers to NDIS 6.20
- Porting NDIS 5.x Drivers to NDIS 6.0
For more information about iterative building, testing, and debugging, see Overview of Build, Debug, and Test Process. This process will help ensure that you build a driver that works.
Step 8: Create a driver package for your driver.
Step 9: Sign and distribute your driver.
The final step is to sign and distribute the driver. If your driver meets the quality standards that are defined for the Windows Hardware Certification Kit (HCK), you can distribute it through the Microsoft Windows Update program. For more information about how to distribute a driver, see Distributing a Driver.
These are the basic steps. Additional steps might be necessary based on the needs of your individual driver.