|
||||||
|
||||||
| Undergraduate Honours Projects | ||||||
|
Carleton University - School of Computer Science Undergraduate Honours Project Winter 2010 Linux USB Driver Programming Christopher Landry
ABSTRACT Device driver programming is a complex subject. This document is an effort to introduce USB device driver programming to undergraduate Computer Science students using the GNU/Linux operating system. Though there are practical uses for developing software that can communicate with external devices, such as to perform experiments with interfaces for audio hardware or robotics, it is a subject that is seldom taught at the undergraduate level. There are many preliminary skills which need to be honed beforehand, including C programming, Linux kernel programming, an understanding of the USB architecture, and a comprehension of the technology of the external device for which the driver is written. The approach taken in this document introduces each of these skills gradually to provide an effective learning path for device driver programming. |
||||||
|