Those bastards!

No, not the NdisWrapper people. The stupid hardware manufacturers that make something like NdisWrapper a necessary evil. You see, for a lot of wireless network cards there just aren't any Linux drivers. [Broadcom] is notorious for not providing any details about their hardware, making it extremely difficult to write drivers for it. So people use NdisWrapper, which lets you use Windows network drivers in Linux. But only on x86, of course.


NDIS stands for "Network Driver Interface Specification" and it is a standard set of things that a Windows network driver must implement. Write a Linux network driver that calls this interface whenever it needs to do something, and voila, you can use Windows drivers on Linux. Of course, the devil is in the details: you have to figure out the binary format of the .sys files, and be careful what NDIS calls you make in the kernel, etc. It does work surprisingly well, when I manage to get the driver loaded without locking up my system :)