FSU Department of Computer Science ↑
  fsu seal

Cross Referenced Code
Meeting Times
Ted Baker
Andy Wang

Linux Kernel & Device Driver Programming

CIS 4930/COP 5641 Summer B Term 2010

This is a hands-on course in operating system internals. Students configure, compile, and install a Linux kernel from sources; do the same for a kernel module; navigate and read the Linux kernel sources; design and implement a kernel module of your own; modify, or design and implement from scratch, a device driver; measure the performance of what you have modified or implemented.

This course is intended for people who have already completed an undergraduate course on operating systems like COP 4610, or who can convince the instructor that they have gained an equivalent general knowledge of operating systems in some other fashion. The course syllabus (see left) contains more specific prerequisites.

The students in the course write device drivers or other kernel modules, in teams. Devices for which students have written drivers include the PixelSmart 512-8 and Video Gala video frame grabbers, the "biopod" fingerprint scanner, and a driver for a Xilinx FPGA development board. Some of the code produced by teams in prior years can be found by following this link.

T. P. Baker and An-I Wang ($Id) - Development of this course was supported in part by National Science Foundation Grant CNS-EHS-0509131. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.