let me try on this
drivers are just programs, which "drives" a specific hardware. They are usually integrated/loaded into the kernel(the core part of the OS, like linux kernel) to handle the hardware on behalf of the kernel.
You see. No one knows how a hardware works(what signals it understands, what can it do, etc.), unless it is compatible with a standard. When it is compatible with a standard(like mouses, monitors, keyboards, etc), then everybody can developes drivers for them. In this case, you don't need a specific driver from the vendor to get it working.
On the other hand, when the hardware doesnt comply to a standard(like those winmodems, graphics boards with advanced features, etc), and the specifications of the hardware are closed, nobody can develope the driver except the designers of the hardware. So you will need to find a driver to make it work.
This is actually same for both Windows and Linux. Since windows has a much bigger market share, hardware vendors tend to develope drivers ONLY for windows and ignore the world of Linux.
I hope this helps you understand better.
Anyway, I myself is still a newbie. If any of the above statements are not quite right, please correct me.