--- layout: default.liquid --- # {{ site.title }} ## About **Mercury** is going to be an Operating System with a radically unique and new design. This includes being based around new ideas and features, sacrificing backwards compatibility for them. ## Main Features - Written in **Rust**[^rust] - Built mainly for **ARM**/**RISC-V** architecture - Not **POSIX** compatible - **OCAP**[^ocap] security, with an **Actor** based system - Well documented using [rustdoc](https://doc.rust-lang.org/rustdoc) and [mdBook](https://rust-lang.github.io/mdBook/) - **Microkernel**[^microkernel] with features being split into different `crates` & `libraries` - Full **UTF-8** support, because it's *2023* - Easy global configuration, **NixOS**/**Guix** style[^home] - Build with [security](/security/) in mind from the start - **Vulkan** rendering - `serde` for serializing data into/from different formats - Allows for easy message passing - Store/read data in `bytes` easily - Can use anything supported by `serde` for configuration - [Comprehensive Testing](https://www.youtube.com/watch?v=2hXNd6x9sZs) with [Automated Tests](https://doc.rust-lang.org/book/ch11-00-testing.html) and [Fuzzing](https://lib.rs/crates/cargo-fuzz) - **Async** & multithreaded ### GUI - Using the same **Actor** system - Accessibility as a priority - Global styling & configuration - Responsive and dynamic - Full multimedia support - Navigable fully by both mouse & keyboard ### Actors #### Why? - Work as an abstraction over any sort of data - Allows for all systems to be able to work together, and use the same features - Reduces work of implementation #### Features - Data verification with checksums - **AES** encryption - **HMAC**[^hmac] message verification - **UUID** identification with a [petname](https://spritely.institute/static/papers/petnames.html) system [^rust]: **Why?** Because I like writing in it, and it's memory safe [^ocap]: [Object Capabilities](https://decentralized-id.com/web-standards/object-capabilities/) [^microkernel]: [Redox | Microkernels](https://doc.redox-os.org/book/ch04-01-microkernels.html) [^home]: [Guix | Keeping Ones Home Tidy](https://guix.gnu.org/blog/2022/keeping-ones-home-tidy/) [^hmac]: [MAC and Key Derivation](https://cryptobook.nakov.com/mac-and-key-derivation)