Quantcast
Channel: The NDIS blog
Browsing all 48 articles
Browse latest View live

Using WDF in an NDIS driver

Can, Should, and How? WDF is a framework that makes it easier to write Windows drivers.  NDIS is a framework for writing low-level Windows network drivers.  The purposes of these frameworks overlap a...

View Article


Using C++ in an NDIS driver

Are NDIS drivers allowed to use C++? The first question is easy: can NDIS drivers be written in C++?  The answer: yes.  In this case, NDIS doesn’t have any official stance on C++, so we just fall back...

View Article


Mapping from NDIS OIDs to WMI classes

In which we write a PowerShell script, install the WDK, attach a kernel debugger, reverse-engineer the OS, and prove Goldbach’s conjecture We’ve previously talked about how to rummage through all the...

View Article

Eliminating empty handlers

Don’t come back empty-handlered NDIS drivers have several opportunities to supply advanced functionality through optional handlers. But if you don’t want the advanced functionality, you don’t need to...

View Article

A new video on NDIS debugging

The Defrag Tools show was kind enough to host me for a quick chat about debugging NDIS drivers. Check it out!

View Article


Image may be NSFW.
Clik here to view.

It’s perfcounter week on the NDIS blog!

Actually every week is perfcounter week. Performance counters are an essential tool for devs, ops, … and marketing. Yet they’re often not well understood. Fortunately, under the hood, performance...

View Article

My favorite perfcounters

… are the NDIS counters.  Like you even had to ask. We love performance counters on the Windows Networking team. We routinely use performance counters to monitor & diagnose issues. Nearly every...

View Article

Goodbye

Microsoft is retiring this blogging platform, so the NDIS blog will be removed soon. If you have any articles that you need to reference, please save them locally.

View Article

Browsing all 48 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>