Introduction
Introduction and Getting Started
1.
Introducing Redox
1.1.
Our Goals
1.2.
Our Philosophy
1.3.
Why a New OS?
1.4.
Redox Use Cases
1.5.
Comparing Redox to Other OSes
1.6.
Why Rust?
1.7.
Side projects
2.
Getting started
2.1.
Running Redox in a virtual machine
2.2.
Running Redox on real hardware
2.3.
Installing Redox on a drive
2.4.
Trying Out Redox
2.5.
Building Redox
2.6.
Podman Build
2.7.
Configuration Settings
2.8.
Questions and feedback
Architecture and Design
3.
Design Overview
4.
The kernel
4.1.
Microkernels
4.2.
Advantages of microkernels
4.3.
Disadvantages of microkernels
4.4.
Boot Process
4.5.
Drivers
4.6.
Memory management
4.7.
Scheduling
5.
URLs, schemes and resources
5.1.
URLs
5.2.
How it works under the hood
5.3.
Schemes
5.4.
The root scheme
5.5.
Resources
5.6.
Stitching it all together
5.7.
"Everything is a URL"
5.8.
An example
6.
Programs and Libraries
6.1.
Components
6.2.
GUI
6.3.
What Ion is
6.4.
Shell
6.5.
Coreutils
6.6.
Supplement utilities
6.7.
Binutils
6.8.
Extrautils
Developing with and for Redox
7.
Developing Overview
8.
The Redox Build Process
8.1.
Advanced Build
8.2.
Advanced Podman Build
8.3.
Working with i686
8.4.
Working with AArch64/Arm64
8.5.
Troubleshooting the Build
9.
Developing for Redox
9.1.
Including Programs in Redox
9.2.
Coding and Building
10.
Contributing
10.1.
Direct contributions
10.2.
Low hanging fruit
10.3.
Book ToDos
11.
Best practices and guidelines
11.1.
Literate programming
11.2.
Writing docs correcty (TM)
11.3.
Style
11.4.
Rusting properly
11.5.
Avoiding panics in the kernel
12.
Using Git
12.1.
How to do a bug report correctly
12.2.
Pull requests
12.3.
How to do a pull request properly
12.4.
Git Guidelines
13.
Communication
13.1.
Chat
13.2.
Reddit
13.3.
GitLab issues
13.4.
Community
Light (default)
Rust
Coal
Navy
Ayu
The Redox Operating System
The Build Process