Well, I think either they've written a driver in C (the usual way) or they are using the
API provided by the NT kernel to usermode (part of them is available from
Win32, too, I think) - and yes, the kernel provides much information about the hardware it's running on
Regards,
Sven