egos-2000 is an educational operating system that implements a complete teaching OS in approximately 2000 lines of C code.
The project addresses the challenge of making operating system internals accessible to students by building a minimal but complete OS that covers all essential components. It uses a three-layer architecture called "earth and grass": the earth layer provides hardware-specific abstractions for devices and memory, the grass layer implements hardware-independent abstractions including process control and system calls, and the application layer provides a file system, shell, and user commands. This layered design allows students to understand each component without being overwhelmed by complexity.
The tool is designed for computer science students and educators who want to teach or learn operating system fundamentals with code that remains comprehensible in its entirety. It runs on both QEMU emulation and actual RISC-V hardware boards, making it suitable for courses that range from simulation-based learning to hands-on embedded systems work. The project includes a companion book with nine course projects built on top of egos-2000, providing a structured curriculum path. This approach differs from larger teaching operating systems by prioritizing code readability and completeness over feature richness.
The project has been adopted in university courses and ported to multiple hardware platforms including custom RISC-V processors and commercial boards. Community contributions have extended the system to run on additional hardware targets and even demonstrated running complex applications like games on top of the kernel, indicating active engagement from both educators and hobbyists interested in systems programming.