![USB、CD、DVD 等设备驱动程序的工作原理](https://linux22.com/image/1421493/USB%E3%80%81CD%E3%80%81DVD%20%E7%AD%89%E8%AE%BE%E5%A4%87%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E7%9A%84%E5%B7%A5%E4%BD%9C%E5%8E%9F%E7%90%86.png)
我想知道设备驱动程序如何工作(在任何平台上,但想知道 Windows、Linux 和 OSX 上的驱动程序之间的区别)。具体来说,我想知道如何在计算机内部检测和使用设备。
我还想知道设备驱动程序通常用哪种编程语言编写,以及如何编写自己的驱动程序。谢谢!
答案1
这是一个很大的问题,超出了论坛帖子的范围。
我建议你读一下 Andrew Tanenbaum 的书,现代操作系统, 和操作系统:设计与实现或者一些类似的教科书。还有其他一些,但我读过他的那本,现代操作系统这本书很棒。我还没读第二本,不过我正在读 :)
此外,对于 USB,其规格可在线查阅:http://www.usb.org/developers/docs/