Skip to content
Snippets Groups Projects
faq.en.md 15.15 KiB
title = "FAQ"

This page covers questions and answers for newcomers and end-users.

What is Redox?

Redox is a microkernel-based, complete, fully-functioning and general-purpose operating system created in 2015, with a focus on safety, freedom, reliability, correctness, and pragmatism.

Wherever possible, the system components are written in Rust and run in user-space.

Current status

Redox is alpha/beta quality software, because we implement new features while fixing the bugs.

Because of this, it's not ready for daily usage yet. Feel free to test the system until its maturity and don't store your sensitive data without a proper backup.

The 1.0 version will be released once all system APIs are considered stable.

What does Redox mean?

Redox is the chemical reaction (reduction–oxidation) that creates rust. As Redox is an operating system written in Rust, it makes sense.

It sounds like Minix and Linux too.

What features does Redox have?

Microkernel benefits

  • True modularity

You can modify/change many system components without a system restart, similar to but safer than some kernel modules and livepatching.

  • Bug isolation

Most system components run in user-space on a microkernel system. Because of this, bugs in most system components won't crash the system/kernel.

  • Restartless design

A mature microkernel changes very little (except for bug fixes), so you won't need to restart your system very often to update it.

Since most of the system components are in userspace, they can be replaced on-the-fly, reducing downtime of servers a lot.

  • Easy to develop and debug

Most of the system components run in userspace, simplifying the testing and debugging.

You can read more about the above benefits on this page.

Rust benefits

  • Less likely to have bugs

The restrictive syntax and compiler requirements to build the code reduce the probability of bugs a lot.

  • Less vulnerable to data corruption

The Rust compiler helps the programmer to avoid memory errors and race conditions, which reduces the probability of data corruption bugs.