This course introduces attendees to developing device drivers for Linux.
This course acquaints developers with the issues essential for Linux device driver development. The course progresses through a number of topics. Each topic is presented along with a supporting laboratory exercise before moving on to the next topic.
This two day course provides practice with the key steps in developing Linux device drivers. The course shows attendees how device drivers work with the Linux kernel, how to compile and load drivers, how to debug drivers, as well as other essential topics. We will discuss character, block and network drivers,
Attendees will develop a complete, simple, driver that demonstrates the process of creating a Linux device driver. The course covers the key issues in Linux device drivers.
Attendees will spend approximately 50 percent of the class time actually gaining hands-on experience with these topics.
Attendees will learn:
The steps necessary to add device drivers to a Linux system
How to determine what hardware is present on a Linux system
The purpose and functionality of device drivers
Compiling and linking device drivers
Basics of network device drivers.
Trade-offs between loadable modules and drivers compiled into the kernel.
The course is designed for software engineers who are new to Linux and/or device drivers. Attendees should have experience with C, be able to perform basic UNIX commands, and have some experience with the basic GNU tools.
The workshop materials include a comprehensive student workbook. The workbook contains all of the slides used in the course as well as hands-on lab exercises. Students are able to bring home the lab and example code used in the class.
Course Workshop and Set-up:
When this class is presented virtually via something like WebEx, attendees are responsible for providing their own native Linux computer. You need to have root access on the computer. Some exercises may involve using a virtual machine in addition and the host computer should be configured to allow running virtual machines.
The following modules will be covered during the class:
you have any questions about the difficulty level of the class
or any other aspect of the class, please contact us at: classes
All attendees will get a Linux laptop to be used during the
class. You have the option of purchasing this laptop with
an additional course fee.
If you would like to arrange an on-site Linux Device Driver
class, please contact us: classes (at) linuxcertified.com.
Public class schedule: Please see dates on our calendar page.