An open-source introductory systems programming textbook in C for Linux and POSIX, used in the University of Illinois CS 341 course.
hackclub/putting-the-you-in-cpu
A multi-chapter technical explainer covering how a computer boots and how programs actually run, from the CPU up to syscalls and processes.
- Stars
- 5,580
- Forks
- 197
- Open issues
- 41
- Last commit
- 11 days ago
What is it?
Putting the "You" in CPU is a written, multi-chapter guide to what happens inside a computer when it starts up and when a program runs. It is aimed at readers who know how to code but have gaps in low-level systems knowledge, and it works through the topics in order, starting with the basics of the machine.
The chapters walk through how a program is loaded and executed, including the role of the ELF executable format, how syscalls cross from user code into the kernel, and how multiple programs share one CPU. The project is published as a website at cpu.land and the source is written in MDX.
The repository is MIT licensed and maintained under the Hack Club organization, with the content authored by kognise.
Key features
- 01Explains the full path from computer startup to running a program
- 02Covers ELF executables, syscalls, and how the kernel runs processes
- 03Organized as sequential chapters on a published website
- 04Source written in MDX and released under the MIT license
Use cases
- Learning how operating systems and CPUs work if you lack a formal systems background
- Preparing for systems programming or operating systems topics
- Refreshing your understanding of syscalls and program execution
Quick start
- 1
Read the explainer online at cpu.land, starting with Chapter 1
Topics
FAQ
- What is putting-the-you-in-cpu?
- A multi-chapter technical explainer covering how a computer boots and how programs actually run, from the CPU up to syscalls and processes. Putting the "You" in CPU is a written, multi-chapter guide to what happens inside a computer when it starts up and when a program runs. It is aimed at readers who know how to code but have gaps in low-level systems knowledge, and it works through the topics in order, starting with the basics of the machine.
- Is putting-the-you-in-cpu free to use? What license does it have?
- putting-the-you-in-cpu is open source under the MIT license. Check the license terms before using it in commercial products.
- Is putting-the-you-in-cpu still maintained?
- Actively maintained. The last commit to putting-the-you-in-cpu was on Oct 27, 2026.
- What can I use putting-the-you-in-cpu for?
- Learning how operating systems and CPUs work if you lack a formal systems background Preparing for systems programming or operating systems topics Refreshing your understanding of syscalls and program execution
- How do I install putting-the-you-in-cpu?
- Read the explainer online at cpu.land, starting with Chapter 1
- Where can I get putting-the-you-in-cpu?
- The source code and installation instructions are on GitHub: https://github.com/hackclub/putting-the-you-in-cpu
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Chinese Markdown edition of the CSAPP textbook with chapter text, exercise answers, Chinese lab guides and official lab packages.
Terminal UI that graphs CPU temperature, frequency, power and utilization, with a built-in CPU stress test.
A 64-bit RISC-V CPU core written in SystemVerilog that boots Linux on an Arty A7 FPGA board, with the RTL, verification and documents all written by Claude Code.
A step-by-step eBPF tutorial with short, runnable examples in C, Go and Rust, built mainly on libbpf and CO-RE.
A visual RISC-V computer architecture simulator and assembly editor for studying how processors execute code.