hubris
FreeA lightweight, memory-protected, message-passing kernel for deeply embedded systems.
FreeFree tier
About hubris
Hubris is a lightweight, memory-protected, message-passing kernel designed for deeply-embedded systems with strong reliability requirements. Developed by Oxide Computer Company, it provides a microcontroller operating environment that emphasizes safety and modularity. The kernel is written in Rust and supports a task-based architecture with drivers, interface definitions via Idol, and a build system for application firmware. Documentation is available in Asciidoc and hosted via GitHub Pages. The project is open source under an MIT-style license.
Key Features
Memory-protected kernel architecture
Message-passing inter-task communication
Designed for deeply-embedded systems with reliability requirements
Modular architecture with tasks, drivers, and reusable libraries
Idol interface definition language for specifying task interfaces
Build system for composing application firmware (app/)
Support for multiple microcontroller families (chips/)
Developer documentation in Asciidoc (doc/)
Test framework for hardware-in-the-loop testing (test/)
Rust-based toolchain with cross-compilation support
Pros & Cons
Pros
- Open source with permissive license (MIT)
- Memory protection enhances reliability and security
- Well-documented developer guides and API references
- Modular design eases customization and maintenance
- Active development by Oxide Computer Company with corporate backing
- Support for multiple hardware platforms (chips/)
Cons
- Relatively new project with limited community size
- Primarily developed for Oxide's own hardware (e.g., Gimlet), may require porting effort
- Requires Rust toolchain and familiarity with embedded Rust
- Ecosystem of third-party drivers and tasks still maturing
Best For
Firmware for safety-critical embedded systemsIoT devices requiring reliable operationMicrocontroller-based control systemsEmbedded systems with strict memory protection needsResearch and development of reliable embedded OS designs
FAQ
What is Hubris?
Hubris is a microcontroller operating environment designed for deeply-embedded systems with reliability requirements. It provides a lightweight, memory-protected, message-passing kernel.
What license does Hubris use?
Hubris is open source and uses a permissive license (MIT). The license file is included in the repository.
How can I contribute to Hubris?
To submit changes, push them to a branch in a fork and submit a pull request to merge into master. See CONTRIBUTING.md for details.
Where can I find developer documentation for Hubris?
Developer documentation is available in Asciidoc format in the doc/ directory and is rendered via GitHub Pages at https://oxidecomputer.github.io/hubris.
What platforms does Hubris support?
Linux and Windows are currently supported as first-tier development platforms. macOS and Illumos are used informally but not tested in CI.