A modern operating system written in Rust that explores intralingual design, shifting OS responsibilities like resource management into the compiler.
Theseus is a modern operating system written from scratch in Rust that experiments with intralingual design principles. It aims to close the semantic gap between compiler and hardware by shifting traditional OS responsibilities like resource management into the compiler, leveraging Rust's safety features and affine types. The OS is designed for novel structure, better state management, and improved reliability in systems.
Systems researchers, embedded systems developers, and OS enthusiasts interested in experimental operating system design, Rust-based systems programming, and compiler-OS integration.
Theseus offers a unique approach to OS design through intralingual design, providing stronger safety guarantees and potentially higher reliability by integrating OS functionality with compiler-level checks. Its experimental nature makes it a valuable platform for researching new OS architectures and fault tolerance mechanisms.
Theseus is a modern OS written from scratch in Rust that explores 𝐢𝐧𝐭𝐫𝐚𝐥𝐢𝐧𝐠𝐮𝐚𝐥 𝐝𝐞𝐬𝐢𝐠𝐧: closing the semantic gap between compiler and hardware by maximally leveraging the power of language safety and affine types. Theseus aims to shift OS responsibilities like resource management into the compiler.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Maximizes Rust's language safety to shift OS responsibilities like resource management into the compiler, aiming for higher reliability through compile-time guarantees, as described in the README's core philosophy.
Designed for easier runtime flexibility and system updates, enabling arbitrary live evolution without redundancy, which is a key experimental feature for novel OS structures.
Provides detailed instructions for building on Linux, WSL, MacOS, and Docker, with specific setup scripts and dependency lists for each environment, making cross-platform development accessible.
Includes both source-level rustdoc and a book-style guide, offering high-level concepts and low-level details for developers, as highlighted in the documentation section.
The README explicitly states it is 'not yet mature,' making it unsuitable for production use and subject to ongoing changes, instability, and potential breaking features.
Requires installing multiple specific tools like GRUB, QEMU, and Rust with platform-dependent steps, which can be cumbersome and error-prone, especially on non-Linux systems like MacOS with gmake.
ARMv8 (aarch64) support is ongoing and doesn't yet cover all crates, limiting its use on modern ARM-based devices and indicating gaps in hardware compatibility.