Linux Device Drivers Training Course
(This course is offered only on-demand to a private batch and can be customized as per the business requirements)
Overview
Implementing Linux on custom hardware will, in most cases, require you to write device drivers. This course demonstrates how to write code that runs within the Linux kernel to handle hardware events and present a standard interface to applications..
This course presents a detailed view of Linux device drivers with an emphasis on topics specific to embedded environments: cross compilation; remote debugging and real-time.
Objectives
At the end of Linux Device Drivers Training course, participants will learn:
- How to write kernel modules
- How to create robust drivers using mutexes and spinlocks to serialise access to shared data
- How to debug kernel code running on a remote embedded target
- How to handle interrupts, including deferred processing using tasklets and work queues
- How to access hardware resources, including devices connected via PCI
- The details of memory management and memory mapping techniques
Suggested Audience
- Software engineers who are developing applications for embedded or real-time Linux
- Engineers wishing to assess the suitability of Linux for their next application
Duration - 5 Days
Prerequisites
- Good āCā programming skills
- General knowledge of an RTOS or embedded operating systems
- Knowledge of Linux or Unix is useful, but not essential
Syllabus
1. Writing Kernel Modules
|
2. Introduction to Character Device Drivers
|
3. Debugging Kernel Code and Device Drivers
|
4. The Linux Driver Model
|
5. Task Synchronisation
|
6. Real Time Linux
|
7. Input and Output
|
8. Time
|
9. Interrupts
|
10. Memory management
|
11. Block Device Drivers
|
12. Devices on a PCI Bus
|
13. Network Device Drivers
|
14. Board Support Packages
|





