Not that it matters much, but:
Windows drivers (.SYS files) are kernel-mode shared-objects, i.e. PE DLL files
Linux drivers (.ko files) are kernel-mode shared-objects, i.e. ELF SO files
The APIs and file formats are different ofcourse, but there is no conceptual difference; .SYS files are loaded entirely in kernel mode just like .ko files, to fill the same function. I have, in fact, read the source doing that in both Windows and Linux and can confirm that they do the same thing for all practical purposes.
Maybe you are confusing it with the user-mode driver framework in Windows, where the drivers are standard user-mode DLL files loaded into WUDFHOST. That would be roughly comparable to something like the user-mode filesystem support in Linux.
Finally, NT has never been a true microkernel and apart from the move of the Win32 subsystem from userland (CSRSS) to kernel mode in NT4 (which is, again, what you might be thinking of), hasn't undergone any change making it more or less of one since the days of NT OS/2 (i.e. before NT3, the first release). To be pedantic it does have a microkernel-like division into subsystems with specific purposes, but it has always been running entirely in ring 0 (or whatever the equivalent was on the CPU NT was originally developed for, N-Ten).