Adding Your Code to the Kernel
From their book's section on adding your own code to the kernel, the authors demonstrate how device drivers are represented in the filesystem.
Device drivers encompass the interface that the Linux kernel uses to allow the programmer to control the system's input/output devices. Entire books have been written specifically on Linux device drivers. In this chapter we attempt to distill this topic down to its essentials. We will follow a device driver from how the device is represented in the filesystem and then through the specific kernel code that controls it. We start by exploring the filesystem and show how these files tie into the kernel.