Linux Kernel Debugging


Start Date: 03 Nov 2018

Linux Kernel Debugging Training



    Course Code  :   MBD#

    Duration         :   15 Hrs


Prerequisite

Basic kernel interfaces and methods such as how to write, compile, load and unload modules, use synchronization primitives, and the basics of memory allocation and management


Introduction

Linux Kernel training is a mandatory course for anyone planning to learn Linux Kernel internals and programming. Participants will learn how Linux-C programming in kernel space is different than user space and they will be able to do their own kernel configuration and do kernel building from kernel source code. Subsequently, the course goes over various kernel sub-systems such as Kernel Virtual Memory, Process Management, Linux Scheduler, Kernel Synchronization Primitives, Kernel Time-keeping Architecture, Kernel Memory Management, Process Address Space, System Calls infrastructure in the Kernel, Signals, Virtual Filesystems, Page/Buffer Cache and Swapping in the Kernel.


Linu Kernel Debugging Course Outline

  • Introduction
  • Kernel Features
  • Monitoring and Debugging
  • proc Filesystem **
  • kprobes
  • Ftrace
  • Perf
  • crash
  • Kernel Core Dumps
  • Virtualization**
  • QEMU
  • Linux Kernel Debugging Tools
  • Embedded Linux**
  • Notifiers
  • CPU Frfequency Scaling **
  • Netlink Sockets**
  • Introduction to Linux Kernel Security
  • Linux Security Modules(LSM)
  • SELinux
  • AppArmor
  • Netfilter
  • Virtual file system
  • Flash Memory filesystems
  • Filesystems in User-Space(FUSE)**
  • Journaling filesystems**


Note:

** These sections may be considered in part or in whole as optional. They contain background reference material, specialized topics, or advanced subjects. The instructor may choose to cover or not cover them depending on classroom experience and time constraints.