TTY drivers This section hasn't been written yet. TTY drivers are character devices that interface with the kernel's generic TTY support, and they require more than just a standard character device interface. I'd appreciate it if someone would write up how to attach a character device driver to the generic TTY layer and submit it to me for inclusion in this guide. This is a technical paper written by Rik Faith at the University of North Carolina. Network Device Drivers Alan Cox gives an introduction to the network layer, including device drivers.
Many functions are useful to all sorts of drivers.
Here is a summary of quite a few of them. An edited version of a post of Linus Torvalds to the linux-kernel mailing list about how to correctly deal with translating memory references when writing kernel source code such as device drivers. Other sources of information Quite a few other references are also available on the topic of writing Linux device drivers by now. Linux Journal has had a long-running series of articles called Kernel Korner which, despite the wacky name, has had quite a bit of useful information on it. They were written by Alessandro Rubini and Georg v. Zezschwitz.