Linux Internals and Device Drivers

Duration          : 6 Days
Course Code   : DG-L1

This training is targeted primarily at software professionals - tech leads, system programmers /
developers, maintainers and testers - who would like to delve much deeper into the internal
functioning of the Linux operating system. This may be in order to work on a project involving this directly or indirectly (for example, for those on an application development project on the Linux platform, this training would give them tremendous insight into optimization and code tweaking based on internal factors). Opensource (and closed-source commercial) contributors / developers (or to-be contributors) would find this training very useful as well.

This training is based on the latest 2.6 Linux kernel. It starts with a quick and comprehensive look at important system programming (advanced POSIX process and signal management) topics. It then moves into deep technical discussion of various kernel internal topics process descriptor, task list, task creation (with code walkthrough), scheduler design and implementation, virtual memory. Indepth coverage continues on: kernel build and the procedure to contribute to the kernel codebase; internal implementation of system calls and the framework of the Linux kernel module programming; the proc filesystem. The data structures required to understand, and the actual framework of a Linux character device driver is covered in depth. Sample driver code includes a simple memory driver as well as I/O port drivers (with an actual custom hardware device) . (Fairly) advanced driver topics include blocking I/O implementation (wait queues), reentrant-safe drivers, hardware interrupt programming and concurrency control (SMP safety).

Throughout, professional / industry best practices are taught and encouraged.

Prerequisites:
Mandatory :
  • Participants should undergo the above Advanced Linux / Unix Application and System
    Programming (DG-L2) training or have the equivalent knowledge/skill sets.
  • A good working knowledge of the 'C' programming language.
Preferable : Application development experience on this platform. Shell scripting skills. 
 Download course coverage details




Clients Serviced


View All Clients View all clients
Download
Download Course coverage ProfilePDF 100KB  |  Download PresentationPDF 2MB

Request Training

You could e-mail us or, for convenience, fill in the simple form below..either way, we shall get back to you quickly!
Course interested *
Name*
E-Mail *
Organization *
Telephone *
Comments / Queries
© 2009, Designer Graphix, Inc. All rights reserved.