Content on this page requires a newer version of Adobe Flash Player.

Get Adobe Flash player

Download Back
Syllabus Kernel Internals & Device Driver Programming

  • MODULE 1: Operating System Concepts and Programming in Linux

This module aims to introduce the Operating system concepts and focuses on programming in User Sapce . This module provides strong foundation to student and emphasises programming in Linux OS .
Main Topics are :

    • Creating Processes , Signals
    • Threads and multithreading programs
    • Semaphores,Mutex
    • IPC mechanism Pipes,Shared memory etc.
    • Sockets and client server programming
    • Debugging with GDB
    • Other tools like strace/ltrace etc
  • Module2 :Kernel Module Programming

This module  introduces  the Operating System  Kernel  programming. It gives basic  aspects of working in Kernel and makes comfortable in kernel programming. All the  topics in this module are Completely practical oriented . They are :

    • Compiling kernel
      • Configuring Kernel and compilation
      • Bootloader and boot process and booting kernel
      • Kernel code browsers
    • Static linking ,dynamic linking of modules
    • User space ,kernel space concepts
    • System calls
    • Writing simple modules
    • Writing Makefiles for modules
  • Module 3: Character Device driver Development

This module aims to provide understanding of device structures and programming aspects For devices. It provides practicals on various drivers modules. Some of the topics are:

    • Driver concepts
      • Block & character driver distinction
      • Low level drivers, OS drivers etc
    • Writing character drivers
      • Device major,minor number
      • Interfaces to driver read,write,ioctl etc
      • Blocking and non blocking calls
    • Synchronisation
      • Semaphores , mutexes ,spinlocks
    • Proc & Sysfs interfaces
    • Interrupt Handling
      • Interrupts and bottom halves
      • Writing interrupt driven drivers
      • Implementing bottom halves
    • Kernel Threads & Work Queues
    • Timers
      • Kernel timers
      • Jiffies , Timer interrupts
    • Kernel linked list implementation
    • Interfacing with hardware
      • IOMapped IO
      • Memory mapped IO
      • Understanding DMA ops
  • Module4: Kernel Debugging techniques
    • Interpreting kernel OOPS
    • KDB
    • KGDB
    • Remote debugging using KGDB

  • Module 5: Linux Kernel Internals (OPTIONAL)

This module gives indepth understanding of OS kernel. After completion of this module students have gained understanding of Operating system kernel and overall working.

    • Process and process control blocks.
      • Ready & Wait queue
      • Process states
      • Light Weight Processes/Kernel threads
    • Scheduling
      • Linux scheduling techniques
    • Memory Management
      • Virtual memory – Paging and Segmentation
      • Buddy algorithm , Slab allocators
      • Memory allocation in kernel
    • VFS –Virtual File System
      • Driver call mappings
      • File system working and operations
  • Module 6: Writing Block drivers(OPTIONAL)

This module gives indepth understanding of block devices and its hirerachy in Linux. Module covers implementation of RAM disk driver. Following are topics covered in this module

    • Block devices design and addressing
    • Concepts of mounting and partitioning
    • Buffer cache , page cache
    • Overview of SCSI
    • Block driver development
  • Module 7: Writing USB device driver (OPTIONAL)

This module covers the USB device interfacing , it covers implementation of USB driver for custom USB device

    • USB device classes
    • USB topology and interfaces
    • USB protocol working
    • Implementing driver in kernel

Prerequiste : C & DS

Note : Course is completely Moduler

Download Back

Student Column
I learned Linux Kernel and Device Driver programming from Ulka ma'am, and my experience was just excellent. My entire carrier I have done Windows programming only and first time I came across Linux in her class. However her lucid style of teaching made it much easier for me to get to understand Linux and Linux Kernel. Ma'am's teaching is awesome combination of professional expertise and great teaching skills. If anyone want to dive into world of Device Drivers and Kernel I would highly recommend joining her institute
- Pranit

I did Linux kernel and Device driver course at L2IT .My exeperience has been wonderful. Topics covered from all aspects.
- Rakesh Shroff

I have completed the kernel and device driver programming & basic shell scripting courses and looking forward to complete other interested courses too. The first course was for more than a year and I really learnt a lot from it which is helping me in my IT career. I've been in Technical Support for more than 6years, however because of the courses; I was able to swiftly switch myself from support to Software Testing, down the line I have a plan to move into development. I've gained all this success because of L2IT. I would recommend everyone to join L2IT; you will definitely get more than expected for sure.
– Sachin Pathare

IF U really want to LEARN. Then don't think twice...Just join the class...I Guarantee that u will be satisfied on all forefronts...

L2IT is best for me. Ulka mam given best guidance to me to improve my 'C' skills

I have done Linux Kernel & Device driver course in L2IT. The course is well designed with guided assignments. Very experienced and knowledgeable faculty. Recommend for all those interested in higher studies, understanding OS programming. Must do a course. Excellent rating.
– Niin More

I have done Shell scripting class. My concepts are very much clear. I got to learn many new things. This training will definitely help me in career and UNIX job opportunity. Thanks Sir & mam
– Umakanta Basa

I am working in testing and this shell scripting & Unix course will definitely help me in my domain
– Trupti Joshi

I gained lot of knowledge by joining L2IT. I think that i can take up any interview in Unix now
- Santosh Surve

I have completed the Unix Shell Programming from L2IT. I was novice to Unix .But after this course I can confidently work on any Unix ,Linux flavours. Also I got very good job in leading MNC on basis of Unix knowledge. Most of the interview questions were already done in Class.
-Prasad Z.

Unix shell scripting course at L2IT is a lifetime awesome experience. Believe me you will start loving Unix/Linux after this. Cheers
– Kalyani

I have completed CCNA from L2IT and got certification also. I am now Networking Professional in India's big Company

Unix Shell scripting course at L2IT is amazing learning experience. Mam teaching is extraordinary and full with industry experience knowledge. I have recommended this course to almost all my friends

Solaris training from Sir at L2IT is simply not training like other institutes but it gives you knowledge like you are on project

Short Term Courses

Quick Quote

Enter Name
Home | About us | Lab |Contact us | Site map
Share Google Groups
Website Designed And Developed By Disclaimer | Terms & Privacy Policy © All Rights Reserved to