A Beginner’s Guide to Linux Kernel Development

A Beginner's Guide to Linux Kernel Development (LFD103)

Learn the key concepts in developing open source software.

Enroll for Free

Course Overview

This free course introduces developers to the Linux kernel development process and teaches the explicit and implicit “rules of the road”. It covers configuring a development system, git basics, writing kernel patches, testing patches, writing commit logs, sending patches, and working on feedback from the kernel community.

Show More

This course is addressed to individuals interested in learning to become Linux kernel developers and contributors.


What you’ll learn:

  • Select and configure your development system
  • Overview of Linux Kernel repositories and releases
  • Git basics – checking out kernel repositories and working with them
  • Build your first kernel and install it
  • Linux kernel Contributor Covenant Code of Conduct
  • Linux Kernel Enforcement Statement
  • Write kernel patches and test them
  • How to communicate with the kernel community (do’s and don’ts)
  • Who and how to send patches (chekcpatch.pl and get_maintainers.pl)
  • Re-work patches and act on feedback from reviewers.


Course Syllabus:

  • Ch 1. Course Introduction
  • Ch 2. Linux Kernel Development Process
  • Ch 3. Patches
  • Ch 4. Working with the Linux Kernel Community
  • Ch 5. Configuring Your Development System
  • Ch 6. Exploring Linux Kernel Sources
  • Ch 7. Building and Installing Your First Kernel
  • Ch 8. Writing Your First Kernel Patch
  • Ch 9. Getting Your Patch Ready and Sending It
  • Ch 10. Kernel and Driver Building, Loading and Dependencies
  • Ch 11. All About Testing
  • Ch 12. Tips to Continue Your Kernel Journey

Course Details

Length: 6 weeks

Effort: 2-3 hours per week

Level: Beginner

Price: Free