Linux Kernel Internals and Device Driver Programming — A 5 day course

contact usEnquire about this course

Synopsis

Developers building embedded solutions using Linux often need to make kernel-level modifications, or to write drivers for custom hardware.

This advanced programming course provides an intensive overview of the Linux 2.6 kernel, kernel level programming and device driver theory and implementation, as well as kernel configuration and compilation.

You'll develop and test code on both a Debian 2.6 Kernel running on a PC Platform and an ELinos 2.6 Kernel running on an ARM 9 target board.

You'll gain experience of device drivers for components and protocols often found in embedded systems, such as I2C, SPI, Bluetooth and USB.

Objectives

You will gain a comprehensive understanding of Linux Kernel building, kernel and device driver programming, and experience of device drivers for components and protocols often found in embedded systems such as I2C, SPI, Bluetooth and USB. You'll consolidate your knowledge with practical labs, including:

Contents

Linux Background

Linux Internals - the key parts

Modules

Character Drivers

Device driver

Time and the Linux Kernel

Memory management - basics

Hardware management and usage - basics

Block drivers

Case studies

Prerequisites

A good knowledge of Linux/Unix and C programming

Proficient at C programming