Files
2025-07-18 23:13:11 +02:00

54 KiB

Awesome Operating System Stuff
 
This list contains awesome operating system related stuff.
The goal is to collect all kinds of different open source OSs so people can study their code and learn from them. As well as collect helpful resources to help people getting started developing in popular operating systems.
 
Open Source Operating Systems
 
9front (http://9front.org) - A fork of Plan 9, designed for distributed, networked computing.
AROS (https://aros.sourceforge.io/) - Research Operating System is a lightweight, efficient, and flexible desktop operating system, designed to help you make the most of your computer. It's an independent, portable and free project, aiming at
being compatible with AmigaOS at the API level
AlmeidaOS (https://github.com/PauloMigAlmeida/AlmeidaOS) - x86-64 OS with its own bootloader, scheduler and limited libc all written from scratch
Animal (https://github.com/frednora/animal) - 32 bit multithreaded operating system (formerly Gramado)
AurixOS (https://github.com/aurixos/os) - A small multiplatform Operating System designed for developers and creators
AquilaOS (https://aquilaos.com) - Operating System that is designed to be POSIX compliant and mostly ISA transparent
Arikoto (https://arikoto.nerdnextdoor.net/), GitHub (https://github.com/IAmTheNerdNextDoor/arikoto) - A Limine protocol, x86_64, C based personal Operating System development project that is inspired by and is aiming to have a similar nature to
ToaruOS
BareMetal (http://www.returninfinity.com/), GitHub (https://github.com/ReturnInfinity/BareMetal) - 64 bit operating system written in Assembly for x86-64
Basekernel (https://github.com/dthain/basekernel) - A simple OS kernel for research, teaching, and fun
BoneOS (https://github.com/Bone-Project/BoneOS)- OS for everyone built by everyone
Bottlerocket OS (https://github.com/bottlerocket-os/bottlerocket)- Linux-based OS meant for hosting containers.
Brutal (https://github.com/brutal-org/brutal) - An operating system inspired by brutalist design that combines the ideals of UNIX from the 1970s with modern technology and engineering
cavOS (https://github.com/malwarepad/cavOS) - Amd64 operating system in C. Trying to make a full OS, with a simple and readable codebase
Charlotte (https://github.com/charlotte-os/charlotte-core) - CharlotteOS kernel in Rust
ChibiOS (http://www.chibios.org/) - a complete development environment for embedded applications including RTOS, an HAL, peripheral drivers, support files and tools
Clive (https://lsub.org/ls/clive.html) - A unikernel OS inspired by Plan9 and Nix developed at Universidad Rey Juan Carlos of Madrid
Cyjon (https://github.com/CorruptedByCPU/Cyjon/) - pure x64 assembly language operating system (related to Fern-Night (https://github.com/CorruptedByCPU/Fern-Night/) project).
DragonOS (https://github.com/fslongjin/DragonOS) - An x86-64 OS build from scratch.
Dreamos64 (https://github.com/dreamos82/Dreamos64) - An x86-64 hobby os built from scratch
Embox (https://embox.github.io/) - Configurable operating system kernel designed for resource constrained and embedded systems.
ExectOS (https://git.codingworkshop.eu.org/xt-sys/exectos), GitHub (https://github.com/xt-sys/exectos) - ExectOS is a modern, EFI-enabled, general purpose operating system written from scratch and implementing the XT architecture. It runs on
x86 and x86_64 architectures and provides NT drivers compatibility layer.
Fern-Night (https://github.com/CorruptedByCPU/Fern-Night/) - C language operating system (related to Cyjon (https://github.com/CorruptedByCPU/Cyjon/) project).
Fiwix (https://www.fiwix.org/), GitHub (https://github.com/mikaku/Fiwix) - A UNIX-like kernel for the i386 architecture.
Fomos (https://github.com/Ruddle/Fomos) - Experimental OS, built with Rust.
FreeRTOS (https://www.freertos.org/), GitHub (https://github.com/FreeRTOS/FreeRTOS) - IoT operating system for microcontrollers, by Amazon.
Genode (https://genode.org/) - A FOSS operating system framework consisting of a microkernel abstraction layer and a collection of userspace components
Gloire (https://github.com/streaksu/Gloire) - An OS built with the Ironclad (https://www.nongnu.org/ironclad/) kernel (a partially formally verified kernel with a small footprint for general-purpose and embedded OSes, written in SPARK and Ada)
and GNU tools.
GreenteaOS (https://greenteaos.github.io/), Github (https://github.com/GreenteaOS/Greentea) - A free OS designed to be compatible with Windows executables
HalideOS (https://gdsc-kiit.github.io/project-halide/) - experimental operating system written entirely from scratch.
HarveyOS (https://harvey-os.org/) - A distributed operating system
HelenOS (https://github.com/HelenOS/helenos) - multikernel multiserver OS
House (https://programatica.cs.pdx.edu//House/) - Haskell User's Operating System and Environment.
Hubris (https://hubris.oxide.computer/) - Hubris is an operating system for microcontrollers developed by Oxide Computer Company in Rust
Illumos (https://illumos.org/) - illumos is a Unix operating system which provides next-generation features for downstream distributions (like OmniOS, OpenIndiana, and Tribblix)
Interim (https://github.com/mntmn/interim) - Minimalist OS with concepts from Lisp machines and Plan9
JSD-OS (https://github.com/pgrAm/JSD-OS) - A small operating system for 32 bit x86.
Jehanne (http://jehanne.io/), GitHub (https://github.com/JehanneOS/jehanne/) - OS inspired by Plan9, 9front and Harvey OS
KiddieOS (https://github.com/FrancisBFTC/KiddieOS_Development) - UNIX-like 64-bit operating system written in Assembly, C++.
KnightOS (https://github.com/KnightOS/KnightOS) - for z80 calculators
KolibriOS (http://www.kolibrios.org) - MenuetOS fork
L4re (https://github.com/kernkonzept/l4re-core) - Operating system and hypervisor for security/safety-critical and virtualization-enabled applications.
LemonOS (https://lemonos.org/), GitHub (https://github.com/fido2020/Lemon-OS) - UNIX-like 64-bit operating system written in C++.
Maestro (https://github.com/maestro-os/maestro), Blog (https://blog.lenot.re) - Operating system written in Rust, aiming to be a lightweight version of Linux
Mako (https://github.com/AjayMT/mako) - Hobby OS for x86 from scratch, written in C
MaslOS (https://github.com/marceldobehere/MaslOS) - A 64 bit GUI multitasking Hobby OS written mostly from scratch in C++ and a bit of C/ASM.
MeetixOS (https://github.com/MarcoCicognani/MeetixOS) - A hobby OS written in modern C++20 which aims to be Unix-like.
MentOS (https://github.com/mentos-team/MentOS) - An educational 32-bit linux-like Operating System.
MenuetOS (http://www.menuetos.net/) - Hobby OS supporting 32 and 64 bit, written in Assembly language
Mimiker (https://mimiker.ii.uni.wroc.pl/), GitHub (https://github.com/cahirwpz/mimiker) - Simple unix-like operating system for education and research purposes. MIPS microkernel.
Mimosa (https://icfp20.sigplan.org/details/scheme-2020-papers/3/Running-Scheme-On-Bare-Metal-Experience-Report-), GitHub (https://github.com/udem-dlteam/mimosa) - Research Operating System that runs Scheme on bare-metal
Minoca OS (https://github.com/minoca/os) - General purpose OS, written in C
MollenOS (https://github.com/Meulengracht/MollenOS) - MollenOS/Vali is a modern operating system that is built with focus on abstraction and a modular design, allowing anyone to port it to any architecture. It currently targets the x86-32 and
x86-64 platform
MyXomycota (https://sourceforge.net/projects/myxomycota/) - Monolithic kernel in C
NESOS (https://notin.tokyo/nesos/) - An OS for the Nintendo Entertainment System!
Nanos (https://github.com/nanovms/nanos) - Unikernel that is linux-compatible, written in C
NodeOS (https://github.com/NodeOS/NodeOS) - OS using NodeJS and Linux
Northport (https://github.com/DeanoBurrito/northport) - Monolithic kernel and support libraries for riscv64 and x86_64.
PathOS (http://path-os.duckdns.org/) - Hobby OS based on MikeOS (https://github.com/mig-hub/mikeOS), written in Assembly Language
Pidi OS (https://github.com/GandelXIV/pidi-os) - Independent and minimalistic OS
PonyOS (https://ponyos.org/), GitHub (https://github.com/klange/ponyos) - ToaruOS-based, My Little Pony themed OS
PouplyOS (https://github.com/mtribiere/PoulpyOS) - Simple OS for fun and learning, named after the ESISAR mascot Poulpy
PureDarwin (https://github.com/PureDarwin/PureDarwin/wiki) - PureDarwin is a community project to extend Darwin into a complete, usable operating system
Qubes OS (https://qubes-os.org) - Security-focused OS built on the Xen hypervisor, designed to isolate different compartments based on levels of trust.
RavynOS (https://github.com/ravynsoft/ravynos) - A BSD-based OS project that aims to provide an experience like and some compatibility with macOS (formerly known as airyxOS)
Redox (https://github.com/redox-os/redox) - written in Rust
rou2exOS (https://github.com/krustowski/rou2exOS), Blog (https://blog.vxn.dev/rou2exos-rusted-edition) - A second iteration of the DOS-like hobby OS written in Rust and x86_64 assembly
RustyHermit (https://github.com/hermitcore/rusty-hermit) - A Rust-based, lightweight unikernel
Sanos (http://www.jbox.dk/sanos/), GitHub (https://github.com/ringgaard/sanos) - Sanos is a minimalistic 32-bit x86 operating system kernel for network server appliances running on standard PC hardware.
SayoriOS (https://github.com/pimnik98/SayoriOS) - Hobby OS for x86 computers, currently under active development, written in C
Sculpt OS (https://genode.org/download/sculpt) - Genode based OS
Serenity (https://github.com/SerenityOS/serenity) - Graphical Unix-like operating system for x86 computers
SimpleOS (https://github.com/xing1357/SimpleOS) - Simple Operating System coded in C and Assembly
Snowdrop OS (http://sebastianmihai.com/snowdrop/) - a homebrew operating system from scratch, in assembly language
Sortix (https://sortix.org/) - Hobby OS in C and C++ by Jonas 'Sortie' Termansen
Syllable (http://syllable.metaproject.frl/) - Successor of AtheOS, Syllable is designed in the tradition of the Amiga and BeOS, but built using many parts from the GNU project and Linux.
SynestiaOS (https://github.com/SynestiaOS/SynestiaOS) - 32/64 bit operating system written in C for arm platform
TempleOS (https://github.com/minexew/TempleOS) - Religious OS :-)
Theseus (https://github.com/theseus-os/Theseus) - A modern experimental OS written from scratch in Rust to explore novel OS structure and state management techniques.
Thor (https://github.com/wichtounet/thor-os) - 64bit operating system mostly written in C++
ToaruOS (https://github.com/klange/toaruos) - Hobby operating system from scratch
Týndur (http://www.tyndur.org/) - Hobby operating system build by the Lowlevel community. Written in C and Pascal
Ultron OS (https://github.com/aswinmohanme/ultronOS) - x86 Operating System written in C++, High School Project
Unikraft (https://github.com/unikraft/unikraft) - A modular unikernel for specialization, high efficiency, performance, and security; Linux/POSIX-compatible; mostly in C
Vinix (https://github.com/vlang/vinix) - Vinix is an effort to write a modern, fast, and useful operating system in the V programming language
Visopsys (https://visopsys.org/) - Open Source Hobby OS developed since 1997
Windows 95 in Electron (https://github.com/felixrieseberg/windows95) - Hobby Windows 95 implementation in Electron
Xv6 (https://pdos.csail.mit.edu/6.828/2019/xv6.html) - A teaching operating system developed in the summer of 2006 for MIT's operating systems course
ZealOS (https://github.com/Zeal-Operating-System/ZealOS) - The Zeal Operating System is a modernized, professional fork of the 64-bit Temple Operating System, TempleOS.
ackOS (https://github.com/ackOS-project/ackOS) - A simple 64-bit operating system.
aurora_os (https://github.com/Athryx/aurora_os) - Written in Rust.
dahliaOS (https://dahliaos.io)- dahliaOS is a modern, secure, lightweight and responsive operating system, combining the best of GNU/Linux and Fuchsia OS.
duckOS (https://github.com/byteduck/duckOS) - A hobby UNIX-like OS with a graphical window manager for x86 computers.
eggos (https://github.com/icexin/eggos) - A Go unikernel running on x86 bare metal
emerald (https://github.com/Abb1x/emerald) - An operating system kernel written for fun in C
gopher-os (https://github.com/gopher-os/gopher-os) - A proof of concept OS kernel written in Go
hhuOS (https://github.com/hhuOS/hhuOS) - hhuOS is a small operating system written in C++ and Assembler for the x86-architecture. The main purpose of this project is to show how different aspects of operating systems theory can be implemented
and linked together. The system is not aimed to be a full-featured operating system for daily use.
hydrogen (https://github.com/mszoek/hydrogen) - toy OS. 64-bit, preemptive multitasking kernel supporting EFI, PCIe, SATA, framebuffer graphics mode, HFS+.
lyre (https://github.com/lyre-os/lyre) - x86 kernel and distribution powered by mlibc, GNU userland tools, and other common nix software.
managarm (https://github.com/managarm/managarm) - Pragmatic microkernel-based OS with fully asynchronous I/O
menix (https://github.com/menix-os/menix) - A minimal and expandable Unix-like operating system.
moros (https://github.com/vinc/moros) - MOROS is a hobby operating system written in Rust for the x86 architecture.
mOS (https://github.com/MQuy/mos) - A hobby operating system developed from scratch
nopeos (https://github.com/d99kris/nopeos) - Simple OS kernel with BASIC interpreter for x86
octox (https://github.com/o8vm/octox) - Unix-like OS in Rust inspired by xv6-riscv
oneOS (https://github.com/nimelehin/oneOS) - x86-32 and ARMv7 kernel with pre-emptive multi-threading, window manager and editor
opuntiaOS (https://github.com/opuntiaOS-Project/opuntiaOS) - an operating system targeting x86, ARMv7, Aarch64.
orange_slice (https://github.com/gamozolabs/orange_slice) - A research kernel and hypervisor attempting to get fully deterministic emulation with minimum performance cost. In Rust
Ovation (https://github.com/Garnek0/Ovation) - A simple, hobby, 64-bit operating system that focuses on simplicity, portability and maintainability. Written in C.
pranaOS (https://github.com/pranaOS/pranaOS) - A unix operating system written from scratch in c / c++
quickOS (evrestrgb.github.io) - An OS made by an independant developer, still in development, like MS-DOS, but in qbasic. It's MADE with qb64.
r3 (https://github.com/Narasimha1997/r3) - A hobby x86_64 Operating System kernel written in Rust -- with minimal functionalities
ravynOS (https://github.com/ravynsoft/ravynos) - BSD-based OS project that aims to provide an experience like and some compatibility with macOS (formerly known as airyxOS)
skiftOS (https://skiftos.org/), GitHub (https://github.com/skiftOS/skift) - A simple, handmade, operating system with a graphical user interface.
soso (https://github.com/ozkl/soso) - Simple unix-like operating system written in Nasm assembly and mostly in C
tilck (https://github.com/vvaltchev/tilck) - A Tiny Linux-Compatible Kernel.
tock (https://www.tockos.org/), GitHub (https://github.com/tock/tock) - A secure embedded operating system for microcontrollers
unox-os (https://github.com/bistcuite/unox-os) - Unox is an educational unix-like operating system
willOS (https://github.com/willdurand/willOS) - A minimal 64 bits kernel (Operating System that cannot "operate" a lot of things)
 
Popular Operating Systems
Darwin XNU (https://github.com/apple-oss-distributions/xnu) - The XNU kernel source code for use in MacOS and iOS
FreeBSD (https://freebsd.org/), Github (https://github.com/freebsd/freebsd) - Unix-like operating system based on the BSD
FreeDOS (http://freedos.org/) - DOS compatible OS
Haiku (https://github.com/haiku/haiku) - BeOS inspired OS
Linux (https://github.com/torvalds/linux) - Linux kernel
Minix (https://www.minix3.org/), Github (https://github.com/Stichting-MINIX-Research-Foundation/minix) - Unix-like operating system based on a microkernel architecture
MS-DOS (https://github.com/microsoft/MS-DOS) - The original sources of MS-DOS 1.25 and 2.0
NetBSD (https://www.netbsd.org/), Github (https://github.com/netbsd/src) - Unix-like operating system based on the BSD
OpenBSD (https://www.openbsd.org/), Github (https://github.com/openbsd/src) - Unix-like operating system based on the BSD
Plan 9 from Bell Labs (http://9p.io/plan9/) - An OS from the creators of Unix, extending the Unix philosophy of "everything is a file" with a network-centric file system, namespaces and distributed computing.
ReactOS (https://reactos.org/), Github (https://github.com/reactos/reactos) - A free Windows-compatible Operating System
SystemV (https://archive.org/details/ATTUNIXSystemVRelease4Version2) - AT&T UNIX System V Source Code
 
Books and Guides
 
Online books
 
How to Make a Computer Operating System (https://github.com/SamyPesse/How-to-Make-a-Computer-Operating-System) - in C++
Intermezzos (https://intermezzos.github.io/book/) - A follow along book to build IntermezzosOS in Rust
Linux Kernel in a Nutshell (http://www.kroah.com/lkn/) - Covers the entire range of kernel tasks, available as chapters or one PDF
The little book about OS development (http://littleosbook.github.io/) by Erik Helin and Adam Renberg
Think OS (http://greenteapress.com/thinkos/) - A Brief Introduction to Operating Systems by Allen B. Downey
Operating System Development Series (http://www.brokenthorn.com/Resources/OSDevIndex.html) - OS from the ground up in C
Operating Systems: Three Easy Pieces (http://pages.cs.wisc.edu/~remzi/OSTEP/) - Easy to read book covering virtualization, concurrency and persistence
xv6: a simple, Unix-like teaching operating system (https://pdos.csail.mit.edu/6.828/2019/xv6/book-riscv-rev0.pdf) - Book for Xv6
Operating Systems: From 0 to 1 (https://tuhdo.github.io/os01/) - Bootstrap yourself to write an OS from scratch by Do Hoang Tu
Osdev Notes (https://github.com/dreamos82/Osdev-Notes) - How to write an operating system from scratch by Ivan G. and Dean T.
 
Tutorials
 
Baking Pi – Operating Systems Development (https://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/os/index.html) by University of Cambridge
Build a minimal multi-tasking OS kernel for ARM from scratch (https://github.com/jserv/mini-arm-os) by Jim Huang
Bran's Kernel Development (http://www.osdever.net/bkerndev/Docs/title.htm) by Brandon Friesen
How to write a Linux kernel patch and submit it (https://github.com/gregkh/kernel-tutorial) by Greg Kroah-Hartman
Presentation on how the Linux kernel is developed (https://github.com/gregkh/kernel-development) by Greg Kroah-Hartman
os-tutorial - How to create an OS from scratch (https://github.com/cfenollosa/os-tutorial) by Carlos Fenollosa
Roll your own toy UNIX-clone OS (http://jamesmolloy.co.uk/tutorial_html/) by James Molloy
Writing an OS in Rust (https://os.phil-opp.com/) by Philipp Oppermann
Making a RISC-V Operating System using Rust (http://osblog.stephenmarz.com/) by Stephen Marz
Operating systems development for Dummies (https://medium.com/@lduck11007/operating-systems-development-for-dummies-3d4d786e8ac) by Leo Whitehead
Kernels 101 – Let’s write a Kernel (https://arjunsreedharan.org/post/82710718100/kernels-101-lets-write-a-kernel) by Arjun Sreedharan
Kernels 201 - Let’s write a Kernel with keyboard and screen support (https://arjunsreedharan.org/post/99370248137/kernels-201-lets-write-a-kernel-with-keyboard) by Arjun Sreedharan
Writing a Tiny x86 Bootloader (https://www.joe-bergeron.com/posts/Writing%20a%20Tiny%20x86%20Bootloader/) by Joe Bergeron
Writing a Bootloader (http://3zanders.co.uk/2017/10/13/writing-a-bootloader/) by Alex Parker
Learning operating system development using Linux kernel and Raspberry Pi (https://github.com/s-matyukevich/raspberry-pi-os)
mya (https://github.com/flydeoo/mya) a fun project to create OS from scratch by Erfan
 
Websites
Genodians (https://genodians.org/) - Stories around the Genode Operating System
os-dev (http://wiki.osdev.org/Main_Page) - Wiki with everything you need to know
Lowlevel (http://www.lowlevel.eu/wiki/Hauptseite) - A wiki about creating an OS from scratch. In German
POSIX (https://pubs.opengroup.org/onlinepubs/9699919799/) - Standards for maintaining compatibility between operating systems
Rust OSDev (https://rust-osdev.com/) - Newsletter about OS development in Rust
OSRTOS (https://www.osrtos.com/) - List of open source real-time operating systems
Multicians (https://www.multicians.org/) - The Multicians web site presents the story of the Multics operating system for people interested in the system's history
 
Papers
The benefits and costs of writing a POSIX kernel in a high-level language (https://www.usenix.org/conference/osdi18/presentation/cutler) by Cody Cutler, M. Frans Kaashoek, and Robert T. Morris, MIT CSAIL
Running Scheme On Bare Metal (https://icfp20.sigplan.org/details/scheme-2020-papers/3/Running-Scheme-On-Bare-Metal-Experience-Report-) by Samuel Yvon, Marc Feeley, Scheme 2020
Unikraft: Fast, Specialized Unikernels the Easy Way (https://dl.acm.org/doi/pdf/10.1145/3447786.3456248) by Kuenzer et al., EuroSys 2021
 
Video Tutorials
 
Write your own Operating System (https://www.youtube.com/playlist?list=PLHh55M_Kq4OApWScZyPl5HhgsTJS9MZ6M)
Nanobyte (https://www.youtube.com/channel/UCSPIuWADJIMIf9Erf--XAsA)
Kernel dev from scratch by Dragon Zap Education (https://www.youtube.com/watch?v=HNIg3TXfdX8&list=PLrGN1Qi7t67V-9uXzj4VSQCffntfvn42v)
OSDev Lecture Series by AptRock327 (https://youtube.com/playlist?list=PL5p37LtXzjqOoEl369i0nlTSaU1O3L-BN)
 
Linux specific
 
A Beginner’s Guide to Linux Kernel Development (LFD103) (https://training.linuxfoundation.org/training/a-beginners-guide-to-linux-kernel-development-lfd103)
 
The Linux Kernel Module Programming Guide (https://sysprog21.github.io/lkmpg/)
The Linux Kernel documentation (https://www.kernel.org/doc/html/latest/)
Working with the kernel development community (https://www.kernel.org/doc/html/latest/process/)
Linux Kernel Teaching (https://linux-kernel-labs.github.io/refs/heads/master)
linux-insides (https://0xax.gitbooks.io/linux-insides/content/)
Linux Kernel Workbook (https://lkw.readthedocs.io/en/latest/index.html)
Linux Kernel Teaching (https://linux-kernel-labs.github.io/refs/heads/master/)
 
bootlins interactive Linux kernel map (https://makelinux.github.io/kernel/map/)
Linux kernel system call table for all archs (https://marcin.juszkiewicz.com.pl/download/tables/syscalls.html) by Marcin Juszkiewicz
 
OldLinux (http://www.oldlinux.org/) - A Heavily Commented Linux kernel source and more
 
sam4ks Linux Kernel Resources (https://github.com/sam4k/linux-kernel-resources)
xairys Linux Kernel Exploitation (https://github.com/xairy/linux-kernel-exploitation)
 
fibdrv Linux kernel module that calculates Fibonacci numbers (https://github.com/sysprog21/fibdrv)
 
kernel-security-learning (https://github.com/bsauce/kernel-security-learning)
 
syzbot (https://syzkaller.appspot.com/upstream) bugs
syzkaller (https://github.com/google/syzkaller) kernel fuzzer
 
Doing more with lore and b4 (https://www.youtube.com/watch?v=wTpQYM08_Yg), slides (https://lpc.events/event/11/contributions/983/attachments/759/1421/Doing%20more%20with%20lore%20and%20b4.pdf)
 
Der Linux Kernel Entwicklungs-Workflow (https://media.ccc.de/v/clt23-193-der-linux-kernel-entwicklungs-workflow) (2023, German) by Rouven Czerwinski
 
Tools
 
b4 (https://github.com/mricon/b4), docu (https://b4.docs.kernel.org/en/latest/), a tool to help with email-based patch workflows
clang-extract (https://github.com/SUSE/clang-extract) a tool to extract code content from source files using the clang and LLVM infrastructure.
hackermail (https://github.com/sjp38/hackermail) a mails management tool for hackers who collaborate using mailing lists
kworkflow (https://github.com/kworkflow/kworkflow) - reduce the overhead with infrastructure setup for Linux development
virtme-ng (https://github.com/arighi/virtme-ng) - quickly build and run kernels inside a virtualized snapshot of your live system
 
Blogposts
 
Planet Kernel (https://planet.kernel.org/)
 
Become a Linux kernel contributor - Part 1 (https://javiercarrascocruz.github.io/kernel-contributor-1) by Javier Carrasco
Become a Linux kernel contributor - Part 2 (https://javiercarrascocruz.github.io/kernel-contributor-2) by Javier Carrasco
Become a Linux kernel contributor - Part 3 (https://javiercarrascocruz.github.io/kernel-contributor-3) by Javier Carrasco
Fixing bugs in the Linux kernel with Syzbot, Qemu and GDB (https://javiercarrascocruz.github.io/syzbot) by Javier Carrasco
b4 for Linux kernel contributors (https://javiercarrascocruz.github.io/b4-for-kernel-contributors) by Javier Carrasco
Use b4 for kernel contributions (https://www.marcusfolkesson.se/blog/use-b4-for-kernel-contributions/) by Marcus Folkesson
Using lei, b4, and mutt to do kernel development (https://josefbacik.github.io/kernel/2021/10/18/lei-and-b4.html) by Josef Bacik
netdev in 2023 (https://people.kernel.org/kuba/netdev-in-2023) by Jakub Kicinski
Five commands to crash the kernel (https://mpdesouza.com/blog/five-commands-to-crash-the-kernel/) by Marcos Paulo de Souza
You can be a kernel hacker! (https://jvns.ca/blog/2014/09/18/you-can-be-a-kernel-hacker/) by Julia Evans
4 paths to being a kernel hacker (https://jvns.ca/blog/2014/01/04/4-paths-to-being-a-kernel-hacker/) by Julia Evans
Guessing Linux kernel registers (https://jvns.ca/blog/2016/01/18/guessing-linux-kernel-registers/) by Julia Evans
How I got robbed of my first kernel contribution (https://ariel-miculas.github.io/How-I-got-robbed-of-my-first-kernel-contribution/) by Ariel Miculas
Apply Linux Kernel Patches from LKML (https://adam.younglogic.com/2022/10/apply-linux-kernel-patches-from-lkml/) by Adam Young (before he got aware of b4)
My patch review workflow (https://josefbacik.github.io/kernel/2021/10/19/patch-review.html) by Josef Bacik
Linux Kernel Develop Workflow (https://gist.github.com/Scott31393/2a8296fe0a04648838117b8ebb21ed40) by Tommaso Merciai
Apply a Linux kernel patch to the stable tree (https://vimeo.com/8200182) (2009) by Greg Kroah-Hartman
Patch Workflow With Mutt 2019 (http://www.kroah.com/log/blog/2019/08/14/patch-workflow-with-mutt-2019/) by Greg Kroah-Hartman
Debug kernel with KGDB (https://www.marcusfolkesson.se/blog/debug-kernel-with-kgdb/) by Marcus Folkesson
Linux Kernel Debugging (https://cs4118.github.io/dev-guides/kernel-debugging.html)
How I Learned to Love the Email Patch Developer Workflow (https://nasamuffin.github.io/git/open-source/email/code-review/2019/05/22/how-i-learned-to-love-email-patches.html) by Emily Shaffer
 
Debugging
 
Bug hunting (https://www.kernel.org/doc/html/latest/admin-guide/bug-hunting.html)
Bisecting a bug (https://www.kernel.org/doc/html/latest/admin-guide/bug-bisect.html)
Dynamic Debug (https://www.kernel.org/doc/html/latest/admin-guide/bug-bisect.html)
Who Made That Change and When: Using Cregit for Debugging (http://www.gonehiking.org/ShuahLinuxBlogs/blog/2018/10/18/who-made-that-change-and-when-using-cregit-for-debugging/) by Shuah Khan
Make stack dump output useful again (https://lwn.net/Articles/592724/)
Debugging Analysis of Kernel panics and Kernel oopses using System Map (https://sanjeev1sharma.wordpress.com/tag/debug-kernel-panics/) by Sanjeev Sharma
Understanding a Kernel Oops! (https://www.opensourceforu.com/2011/01/understanding-a-kernel-oops/) by Surya Prabhakar
 
Email
Learn how to use git+email: git-send-email (https://git-send-email.io/)
Learn how to review patches over email: git-am (https://git-am.io/)
Use plaintext (https://useplaintext.email) emails
 
The advantages of an email-driven git workflow (https://drewdevault.com/2018/07/02/Email-driven-git.html) by Drew DeVault
Code review at the speed of email (https://drewdevault.com/2022/07/25/Code-review-with-aerc.html) by Drew DeVault
 
Conferences / Presentations
Linux Plumbers (https://lpc.events/), YT (https://www.youtube.com/c/LinuxPlumbersConference)
The Linux Foundation (https://www.youtube.com/@LinuxfoundationOrg)
 
os Github: https://github.com/jubalh/awesome-os