This project provides a step-by-step educational guide on building a simple operating system kernel entirely from scratch, specifically targeting the Raspberry Pi 3. The operating system, referred to as RPi OS, is inspired by the Linux kernel but remains intentionally minimal to focus on clarity and teaching fundamental OS concepts. Each lesson introduces a kernel feature and demonstrates its implementation within RPi OS, followed by a comparison to how the same concept is realized in the Linux kernel. The repository is structured so that every lesson corresponds to a snapshot of the source code at that stage, making it easier for learners to follow the progression of kernel development. The design of the lessons emphasizes gradual learning, allowing readers without prior OS development experience to understand kernel internals. The project is still under active development and encourages community contributions to expand its lessons and improve its content.
Features
- Step-by-step tutorials on OS development for Raspberry Pi
- Covers bootloading, kernel, memory, and interrupts
- Written in C and ARM assembly for low-level clarity
- Hands-on examples runnable on real Raspberry Pi boards
- Educational explanations of OS fundamentals
- Incremental lessons for progressive learning