views:

26

answers:

0

Hi, I recently made my first device to PC connection using USB. for Pc side, I used LibUSB-win32 library. This experience made me think - are system drivers (those who came with OS) written on some special level, which cannot be achieved otherwise? More exactly, are they so deep integrated into OS that no user-written driver can be written with same features?

For example, I read some article that USB Linux API started its development in (don´t remember), and its core part of the OS, and than any user-USB based drivers are based on this. So, could you actually write that core USB API driver, and add it to, lets say older pre-USB Linux versions, or not?

And on Windows, basicaly the same question, could you write your own USB host drivers? Since all user drivers even used by LibUSB-win32 claim interface from that driver.

Or, another maybe even better example, lets say PCI driver. PCI is so integrated into system that you need to have these drivers default in OS from start, but could you chage them to support, lets say imaginary newer version of PCI?

I basically just want to know how deep you can go with your own drivers. Thanks.