Blog OS is the source code and content for a blog series called "Writing an OS in Rust," hosted at os.phil-opp.com. An operating system (OS) is the foundational software that manages your computer's hardware and lets other programs run. Building one from scratch is one of the deepest exercises in programming, usually reserved for experts, this project makes that journey accessible through step-by-step tutorials. The series teaches you to build a small operating system kernel (the core of an OS that talks directly to hardware) using Rust, a modern programming language designed for safety and performance. Each blog post corresponds to a git branch in this repository, so you can check out the code at exactly the stage each post describes. The tutorials progress through several phases. It starts by creating a bare-bones program that runs without any operating system underneath it. Then it covers interrupts (how the CPU signals events like key presses), memory management (how the OS allocates and tracks memory), and eventually async/await, a programming model for running multiple tasks concurrently without traditional threads. Topics covered include VGA text mode (how to write characters to the screen at the hardware level), CPU exceptions and double faults (handling hardware errors), paging (a technique for managing memory in chunks), heap allocation (dynamic memory), and asynchronous multitasking. The project targets x86-64 hardware architecture and is written in Rust. It is dual-licensed under Apache 2.0 and MIT.
Generated 2026-05-21 · Model: sonnet-4-6 · Verify against the repo before relying on details.