@@ -27,7 +27,7 @@ This page covers the most asked questions.
...
@@ -27,7 +27,7 @@ This page covers the most asked questions.
Redox is a microkernel-based operating system, a complete, fully-functioning, general-purpose operating system with a focus on safety, freedom, reliability, correctness, and pragmatism.
Redox is a microkernel-based operating system, a complete, fully-functioning, general-purpose operating system with a focus on safety, freedom, reliability, correctness, and pragmatism.
Wherever possible, the system components are written in Rust and run in user-space
Wherever possible, the system components are written in Rust and run in user-space.
## What features does Redox have?
## What features does Redox have?
...
@@ -35,7 +35,7 @@ Wherever possible, the system components are written in Rust and run in user-spa
...
@@ -35,7 +35,7 @@ Wherever possible, the system components are written in Rust and run in user-spa
#### True modularity
#### True modularity
You can modify/change many system components without a system restart, similar to [livepatching].
You can modify/change many system components without a system restart, similar to but safer than [livepatching].
@@ -67,17 +67,15 @@ By isolating the system components from the kernel, the [attack surface] is very
...
@@ -67,17 +67,15 @@ By isolating the system components from the kernel, the [attack surface] is very
#### Improved security and reliability without significant performance impact
#### Improved security and reliability without significant performance impact
As the kernel is small, it uses less memory to do its work and close to bug-free status ([KISS] goal).
As the kernel is small, it uses less memory to do its work and the limited kernel code helps keep it close to bug-free status ([KISS] goal).
Beyond being small, the system is written in Rust, this language helps the programmer to write better code that don't cause performance problems.
Rust's safe and fast language design, combined with the small size of the kernel code base, helps ensure a reliable, performant and easy to maintain core.
Rust implement performance optimization with safety by default.
@@ -93,7 +91,7 @@ Expect high performance and data safety (copy-on-write, data integrity, volumes,
...
@@ -93,7 +91,7 @@ Expect high performance and data safety (copy-on-write, data integrity, volumes,
The main goal of Redox is to be a general-purpose OS for any kind of task/computer, while maintaining security, reliability and correctness.
The main goal of Redox is to be a general-purpose OS for any kind of task/computer, while maintaining security, reliability and correctness.
We aim to be an alternative for existing Unix systems (Linux/BSD) too, with the ability to run Unix programs only minimal modifications.
Redox aims to be an alternative for existing Unix systems (Linux/BSD), with the ability to run most Unix programs too, with only recompilation or minimal modifications.
[Our Goals]
[Our Goals]
...
@@ -101,7 +99,9 @@ We aim to be an alternative for existing Unix systems (Linux/BSD) too, with the
...
@@ -101,7 +99,9 @@ We aim to be an alternative for existing Unix systems (Linux/BSD) too, with the
## What I can do with Redox?
## What I can do with Redox?
As a general-purpose operating system, you can do almost anything on most devices with high performance/security.
As a general-purpose operating system, you will be able to do almost anything on most devices with high performance/security.
Redox is still under development, so our list of supported applications is currently limited, but growing.
[Use Cases]
[Use Cases]
...
@@ -159,7 +159,9 @@ Redox tries to implement the Linux performance improvements in a microkernel des
...
@@ -159,7 +159,9 @@ Redox tries to implement the Linux performance improvements in a microkernel des
## What is a microkernel?
## What is a microkernel?
A microkernel is a OS core model with a small quantity of code running on the first privilege of the processor, this model of OS core brings more stability and security, with a small cost on performance.
A microkernel is the near-minimum amount of software that can provide the mechanisms needed to implement an operating system, which run on the highest privilege of the processor.
This approach to OS design brings more stability and security, with a small cost on performance.
- [Redox Book explanation]
- [Redox Book explanation]
...
@@ -167,9 +169,9 @@ A microkernel is a OS core model with a small quantity of code running on the fi
...
@@ -167,9 +169,9 @@ A microkernel is a OS core model with a small quantity of code running on the fi
## What programs can Redox run?
## What programs can Redox run?
Unix/POSIX programs, Redox is source-compatible with Linux too (need to compile).
Redox is designed to be source-compatible with most Unix, Linux and POSIX-compilant applications, only requiring compilation.
Some software need porting (recipes), as we don't support X11/Wayland yet, but SDL/Orbital.
Currently, most GUI applications require porting, as we don't support X11 or Wayland yet.
Some important software that Redox support:
Some important software that Redox support:
...
@@ -183,12 +185,9 @@ Some important software that Redox support:
...
@@ -183,12 +185,9 @@ Some important software that Redox support:
Currently Redox has a bootstrap script Debian/Ubuntu/Pop OS! with unmaintained support for other distributions.
Currently Redox has a bootstrap script for Debian/Ubuntu/Pop OS! with unmaintained support for other distributions.
We are moving to use Podman as our main compilation method, it is the recommended build process for non-Debian systems.
We are moving to use Podman as our main compilation method, it is the recommended build process for non-Debian systems.
(Podman avoid environment problems on compilation)
(Podman avoids environment problems on compilation)
- [Redox Book Guide] - (Debian/Ubuntu/Pop OS!)
- [Redox Book Guide] - (Debian/Ubuntu/Pop OS!)
- [Redox Book Advanced Guide] - (Debian/Ubuntu/Pop OS!)
- [Redox Book Advanced Guide] - (Debian/Ubuntu/Pop OS!)
...
@@ -302,14 +306,6 @@ We are moving to use Podman as our main compilation method, it is the recommende
...
@@ -302,14 +306,6 @@ We are moving to use Podman as our main compilation method, it is the recommende
[Redox Book Podman Guide]:https://doc.redox-os.org/book/ch02-06-podman-build.html
[Redox Book Podman Guide]:https://doc.redox-os.org/book/ch02-06-podman-build.html
[Redox Book Podman Advanced Guide]:https://doc.redox-os.org/book/ch08-02-advanced-podman-build.html
[Redox Book Podman Advanced Guide]:https://doc.redox-os.org/book/ch08-02-advanced-podman-build.html
### How to update the sources and compile the changes
If you already downloaded Redox sources and compiled, it's very easy to fetch/rebuild new changes.
- [Redox Book Rebuild Guide]
[Redox Book Rebuild Guide]:https://doc.redox-os.org/book/ch09-02-coding-and-building.html#the-full-rebuild-cycle
### How to launch QEMU without GUI
### How to launch QEMU without GUI
Run:
Run:
...
@@ -318,20 +314,12 @@ Run:
...
@@ -318,20 +314,12 @@ Run:
QEMU terminal will looks like a container/chroot.
QEMU terminal will looks like a container/chroot.
### How to insert files inside Redox QEMU harddisk
If you want to do quick changes/testing on QEMU image.
- [Redox Book QEMU Guide]
[Redox Book QEMU Guide]:https://doc.redox-os.org/book/ch09-02-coding-and-building.html#patch-an-image
### How to troubleshoot your build in case of errors
### How to troubleshoot your build in case of errors
Read all the Redox Book before to see if the problem is your build configuration or toolchain, if it don't fix your error, read:
Refer to the Redox Book before to see if the problem is your build configuration or toolchain, if you still have problems, see the following or join us on [Redox Chat](https://doc.redox-os.org/book/ch13-01-chat.html).
- [Redox Book Troubleshooting Guide]
- [GitLab Troubleshooting Guide]
- [GitLab Troubleshooting Guide]
- [Redox Book Troubleshooting Guide]
[Redox Book Troubleshooting Guide]:https://doc.redox-os.org/book/ch08-05-troubleshooting.html
[Redox Book Troubleshooting Guide]:https://doc.redox-os.org/book/ch08-05-troubleshooting.html