YoVDO

Linux Device Drivers

Offered By: LinkedIn Learning

Tags

Linux Courses

Course Description

Overview

Learn the important facets of Linux device drivers—what they are, what each type can do, and how to compile, debug, and add functionality to your drivers.

Syllabus

Introduction
  • Explore Linux device drivers
  • What you should know
1. How Loadable Modules Work
  • Describe the benefits of loadable modules
  • Effectively use module commands
  • Use and define module parameters
  • Work with licensing and modules
  • Challenge: Work with loadable modules
  • Solution: Work with loadable modules
2. Compiling and Debugging
  • Writing a loadable kernel module
  • Build and load a loadable module
  • Use printk() for tracing and debugging
  • Use tracing and debugging
  • Challenge: Write, trace, debug
  • Solution: Write, trace, debug
3. Character Device Drivers
  • Create and use device files
  • Implement character device driver file operations
  • Write a character device driver
  • Understand the user and kernel address spaces
  • Challenge: Write a character driver
  • Solution: Write a character driver
4. Block Drivers
  • Use block device files
  • Describe the function of the block layer
  • Implement block driver operations
  • Handle the block request queue
  • Challenge: Write a block driver
  • Solution: Write a block driver
5. Network Drivers
  • Look at the role of network device drivers
  • Examine the net_device_ops structure
  • Examine PCI related API in network drivers
  • Challenge: Using tools with a network driver
  • Solution: Using tools with a network driver
Conclusion
  • Learn more about Linux device drivers

Taught by

Kevin Dankwardt

Related Courses

Introduction to Linux
Linux Foundation via edX
操作系统原理(Operating Systems)
Peking University via Coursera
Internet of Things: Setting Up Your DragonBoard™ Development Platform
University of California, San Diego via Coursera
Information Security-3
Indian Institute of Technology Madras via Swayam
Introduction to Embedded Systems Software and Development Environments
University of Colorado Boulder via Coursera