Linux Kernel Internals Programming

Linux Kernel Internals Programming

Duration : 20 Hours

Student, who want to solid development expertise in Cloud Computing , Big Data, DevOps and IOT technologies, must have good understanding of Linux Kernel Internals.

During course, first, we covers basics of Linux kernel Architecture and then deep dive of memory management & process management of Linux Kernel, Linux Kernel module programming, Linux char device driver, Linux kernel debugging techniques and locking mechanisms.

Course Features

Certificate Trainer: 10+ Years of IT Exp
24/7 Support Live Class Video Recording

1. Introduction
1.1 An Overview of Unix/Linux
1.2 User Space vs Kernel space
 
2. Userspace and Kernel Space Interfaces
2.1 IOCTL
2.2 System Call
2.3 Procfs/ sysfs
 
3. Memory Management
3.1 Allocating Memory
3.2 Memory Addressing
3.3 Paging Implementation in Linux
 
4. Process Management
4.1 Process vs thread
4.2 Process Descriptor
4.3 Process Scheduling Algorithms
 
5. Kernel Module Programming
5.1 Writing sample Module
5.2 Compiling and Loading kernel modules
5.3 The Kernel Symbol Table
5.4 Initialization and Shutdown
5.5 Module Parameters 
 
6 Linux Char Device Driver
6.1 Major and Minor Numbers
6.2 Implementing char device driver with read & write functionality
6.3 Communicating with char device driver using ioctl
 
7. Kernel Debugging
7.1 Printk
7.2 Syslog
7.3 Oops analysis
 
8. Synchronization
8.1 Critical regions and race conditions
8.2 Deadlocks
8.3 synchronization primitives Mutex/Semaphore/SpinLock/atomic variables.
 

* Basic familiarity with any unix/Linux operating system is must.
* Good understanding of C programming is must
* Student must have completed Linux Administration course or hold equivalent technical expertise.
  

The course material is designed to provide extensive hands-on experience on following
* Overview of Linux Kernel Architecture
* Linux Memory Management
* Linux Process Management 
* Linux Kernel Module Programming
* Linux Char Device Driver Development
* Kernel Debugging
* Synchronization Techniques like basic locking mechanisms, atomic variable, spin lock, mutex etc

Registered Office:

Impecabble Research Lab

C-102, Bloom Tower,My World
    Baner, Pune, 411045
 +1.404.828.0450 (US)
 +91-7798188384 (India)
contact@irlabs.io
Contact Us