github.com/kaist-cp/rv6 ↗
An animated time-lapse of how kaist-cp/rv6 was built, commit by commit.
Open this visualization on its own page →
Contributors
44
Lines of Code
7,262
From
2006-06-12
To
2020-12-22
About kaist-cp/rv6
xv6 is a reimplementation of Unix Version 6 designed for modern RISC-V multiprocessor systems and written in ANSI C. It follows the structure and style of the original v6 operating system created by Dennis Ritchie and Ken Thompson, serving as an educational tool for teaching operating systems concepts at MIT in the course 6.S081.
The project provides a functional Unix-like kernel that can be built and run on QEMU emulation for RISC-V architecture. Building xv6 requires a RISC-V GNU toolchain and QEMU configured for riscv64-softmmu. The implementation addresses core OS concepts including process management, memory management, file systems, and synchronization primitives, with notable contributions in areas like context switching, locking mechanisms, and multiprocessor support from various developers over the years.
The primary audience is students learning operating systems design and implementation. The maintainers emphasize that the project prioritizes simplifications and clarifications for educational purposes over the addition of new features, making it a focused learning resource rather than a feature-rich production system.