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

Offered by Linux Foundation,
A Beginner's Guide to Linux Kernel Development (Linux Foundation)

Learn the key concepts in developing open source software. 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.

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
Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Introduction to Embedded Systems Software and Development Environments (Coursera) Coursera
University of Colorado Boulder

Introduction to Embedded Systems Software and Development Environments (Coursera)

Welcome to the Introduction to Embedded Systems Software and Development Environments. This course is focused on giving you real world coding experience and hands on project work with ARM based Microcontrollers. You will learn how to implement software configuration management and develop embedded software applications. Course assignments include creating a build system using the GNU Toolchain GCC, using Git version control, and developing software in Linux on a Virtual Machine.

Sep 14th 2026
4 Weeks
Introduction to Linux (Linux Foundation) The Linux Foundation
Linux Foundation

Introduction to Linux (Linux Foundation)

Never learned Linux? Want a refresh? Take this course to learn the basics of this popular open source operating system. Develop a good working knowledge of Linux using both the graphical interface and command line, covering the major Linux distribution families. Linux powers 94% of the world’s supercomputers, most of the servers powering the Internet, the majority of financial trades worldwide and a billion Android devices. In short, Linux is everywhere. It appears in many different architectures, from mainframes to server to desktop to mobile and on a staggeringly wide variety of hardware.

Self Paced
Self-Paced
A Beginner's Guide to Open Source Software Development (Linux Foundation) The Linux Foundation
Linux Foundation

A Beginner's Guide to Open Source Software Development (Linux Foundation)

Learn the key concepts in developing open source software. This course introduces developers to the key concepts in developing open source software. It covers the who (successful projects and communities), what (definition), why (benefits), where (Git) and how (licensing, compliance, collaboration tips, managing diversity and continuous development & integration).

Self Paced
Self-Paced
Introduction to Kubernetes (edX) EdX
Linux Foundation,LinuxFoundationX

Introduction to Kubernetes (edX)

Want to learn Kubernetes? Get an in-depth primer on this powerful system for managing containerized applications. Is your team beginning to use Kubernetes for container orchestration? Do you need guidelines on how to start transforming your organization with Kubernetes and cloud native patterns? Would you like to simplify software container orchestration and find a way to grow your use of Kubernetes without adding infrastructure complexity? Then this is the course for you!

Self Paced
Self-Paced
Linux on LinuxONE (Coursera) Coursera
IBM

Linux on LinuxONE (Coursera)

This course is for Linux Systems Administrators, Architects and Developers who are already familiar with Linux components and everyday tasks, but need a primer on how to best take advantage of the LinuxONE platform. This includes working with the hardware, software, facilities, and processes unique to LinuxONE. It is comprised of videos, links to online resources, and a final test for a badge.

Sep 14th 2026
5-12 Weeks
Concurrency in Go (Coursera) Coursera
University of California, Irvine

Concurrency in Go (Coursera)

Learn how to implement concurrent programming in Go. Explore the roles of channels and goroutines in implementing concurrency. Topics include writing goroutines and implementing channels for communications between goroutines. Course activities will allow you to exercise Go’s capabilities for concurrent programming by developing several example programs.

Aug 31st 2026
4 Weeks
Linux and Bash for Data Engineering (Coursera) Coursera
Duke University

Linux and Bash for Data Engineering (Coursera)

In this second course of the Python, Bash and SQL Essentials for Data Engineering Specialization, you will learn the fundamentals of Linux necessary to perform data engineering tasks. Additionally, you will explore how to use both Bash and zsh configurations, and develop the syntax needed to interact and control Linux. These skills will allow you to manage and manipulate databases in a Bash environment.

Aug 31st 2026
4 Weeks
Linux System Administration with IBM Power Systems (Coursera) Coursera
IBM

Linux System Administration with IBM Power Systems (Coursera)

This course introduces administrative tasks that a system administrator can perform with Linux hosted on IBM Power servers. This includes virtualization concepts such as logical partitioning, installation of Linux, command-line operations, and more interesting administration and device management tasks. This course includes hands-on exercises with systems from an IBM data center.

Aug 31st 2026
4 Weeks
Digital Forensics Essentials (DFE) (Coursera) Coursera
EC-Council

Digital Forensics Essentials (DFE) (Coursera)

Digital Forensics Essentials helps learners increase their competency and expertise in digital forensics and information security skills, thereby adding value to their workplace and employer. This course will introduce learners to Computer Forensics Fundamentals as well as the Computer Forensics Investigation Process. Plan to learn about Dark Web, Windows, Linux, Malware Forensics, and so much more! The interactive labs component of this course ensures that learners receive the hands-on, practical experience required for a future in digital forensics.

Aug 31st 2026
5-12 Weeks