Write and Submit your first Linux kernel Patch

This repository contains a book-in-progress about the Linux kernel and its insides.

The goal of this project is simple – to share knowledge about the Linux kernel internals and related low-level topics. If you’re curious about what’s under the hood, see the Table of Contentsarrow-up-right.

Chapter status (kernel v6.18.0)

[!IMPORTANT] I started writing this series when the latest version of the kernel was 3.18. A lot has changed since then, and I am in progress of updating the content to reflect modern kernels (v6.18+). I’ll continue revising the posts as the kernel evolves.

Requirements

[!TIP] You can get started with Assembler with my other series of posts about the Assembly programmingarrow-up-right.

Translations

Thanks to the volunteers, the posts about Linux are translated into different languages.

[!NOTE] The translations may diverge from the original content.

Contribution

Read the Contribution guidearrow-up-right to learn how to contribute to the project. When contributing, make sure to follow the Code of Conductarrow-up-right.

If you have any questions or suggestions, feel free to ping me at Twitter @0xAXarrow-up-right, add an issuearrow-up-right, or drop me an emailenvelope.

Mailing list

There is a Google group mailing list (kernelhacking@googlegroups.com) for learning the kernel source code.

To join the group, send an email to kernelhacking+subscribe@googlegroups.com. You will receive a confirmation email. After replying to it, you will be added to the mailing list.

[!TIP] If you have a Google account, you can simply open the archive pagearrow-up-right and click Apply to join group. You will be approved automatically.

License

This project is licensed under the BY-NC-SA Creative Commonsarrow-up-right.

Author

The technical content is written by @0xAXarrow-up-right.

Additional big thanks to @klaudiagrzarrow-up-right for text improvements.

Last updated