egos-2000
A teaching operating system written in exactly 2000 lines of code so students can read all of it. It runs on QEMU and RISC-V boards and comes with course projects.
Pick a small issue you can reproduce, then fix it with your AI coding agent.
Share on XCustom license (see repository)
Overview
egos-2000 is a teaching operating system written in exactly 2000 lines of code, so a student can read every line. It covers the parts an educational OS needs and runs on QEMU and on RISC-V boards. Its name comes from a three-layer design of earth, grass and application layers. The EGOS book provides 9 course projects built on the code, making it suitable for operating systems courses.
Key features
- Complete teaching OS in exactly 2000 lines, mostly C
- Runs on QEMU and RISC-V boards
- Earth layer handles hardware, grass layer handles processes and system calls
- Application layer holds the file system, shell and user programs
- EGOS book supplies 9 course projects
Best for
Students and instructors who want an operating system small enough to read in full and to use in course projects. It is a learning tool, not a general purpose OS.
- Upstream
- yhzhang0128/egos-2000
- Fork on GitHub
- Guo-astro/egos-2000
- Upstream stars
- 3.6k
- Category
- Hardware, OS and embedded
- License
- Custom license (see repository)
- Forked
- 2026-08-20
- Sync status
- In syncLast synced 2026-10-19
More in Hardware, OS and embedded
DroidDesk turns an ARM64 Android phone into a Linux desktop using Termux or its standalone Android app. Use it to run desktop applications on the phone or connect it to a monitor.
Forked 2026-10-17Last synced 2026-10-19License: GPL-3.0Hardware, OS and embeddedGitHub
Firmware that turns supported ESP32-family Wi-Fi radios into receive-only, low-duty-cycle SDRs for capturing and analyzing radio signals without separate SDR hardware.
Forked 2026-10-15Last synced 2026-10-19License: GPL-3.0Hardware, OS and embeddedGitHub
ESP32 Bit Pirate turns an ESP32 into a multi-protocol hardware development and analysis tool. Use its USB serial or Wi-Fi web CLI to inspect, test, and interact with digital and radio interfaces.
Forked 2026-10-14Last synced 2026-10-19License: MITHardware, OS and embeddedGitHub
An open hardware and Android software system that improves smartphone GNSS measurements and streams them to an RTK server for real-time centimeter-level positioning.
Forked 2026-10-14Last synced 2026-10-19License: MITHardware, OS and embeddedGitHub