I have seen several project by now, that use USB interface. They usually require special driver for Windows, but not for Linux based systems. Why is that? I mean, even Windows has some generic drivers for basic USB device classes, so what does Linux support that Windows does not?