Redox (operating system)
Redox is a Unix-like microkernel operating system written in the programming language Rust, which has a strong focus on safety, stability, and high performance.[4][5][6] Redox aims to be secure, usable, and free. Redox is inspired by prior kernels and operating systems, such as SeL4, MINIX, Plan 9, and BSD. It is similar to the GNU or BSD ecosystem, but in a memory-safe language.[7] It is free and open-source software distributed under an MIT License.
Redox running Ion shell in Orbital windowing system | |
Developer | Jeremy Soller, Redox Developers[1] |
---|---|
Written in | Rust, assembly |
OS family | Unix-like |
Working state | Current |
Source model | Free software |
Initial release | 20 April 2015 |
Latest preview | 0.5.0 / 24 March 2019 |
Repository | |
Marketing target | Desktop, workstation, server |
Available in | English |
Package manager | pkgutils |
Platforms | x86-64; ARM64 in development[2] |
Kernel type | Microkernel |
Userland | Custom |
Influenced by | POSIX[3] |
Default user interface | Command-line, Orbital |
License | MIT |
Official website | www |
Design
The Redox operating system is designed to be highly secure.[4] This is reflected in two main design decisions:
- Using the programming language Rust for implementation
- Using a microkernel design, similar to MINIX
Components
Redox is a full-featured operating system, providing packages (memory allocator, file system, display manager, core utilities, etc.) that together make up a functional operating system. Redox relies on an ecosystem of software written in Rust by members of the project.
- Redox kernel – largely derives from the concept of microkernels, with heavy inspiration from MINIX
- Ralloc – memory allocator
- TFS file system – inspired by the ZFS file system
- Ion shell – the underlying library for shells and command execution in Redox, and the default shell
- pkgutils – package manager
- Orbital windowing system – display and window manager, sets up the orbital: scheme, manages the display, and handles requests for window creation, redraws, and event polling
- relibc – C standard library
Command-line applications
Redox supports command-line interface (CLI) programs, including:
- Sodium – vi-like editor that provides syntax highlighting
- Rusthello – advanced Reversi AI; is highly concurrent, serving as proof of Redox's multithreading abilities; supports various AI strategies, such as brute forcing, minimax, local optimizations, and hybrid AIs
Graphical applications
Redox supports graphical user interface (GUI) programs, including:
- NetSurf – a lightweight web browser which uses its own layout engine
- Calculator – a software calculator which provides functions similar to the Windows Calculator program
- Editor – simple text editor, similar to Microsoft Notepad
- File Browser – a file manager that displays icons, names, sizes, and details for files; uses the launcher command to open files when they are clicked
- Image Viewer – Image viewer for simple file types
- Pixelcannon – 3D renderer, can be used to benchmark the Orbital desktop
- Orbterm – ANSI type terminal emulator
History
Redox was created by Jeremy Soller and was first published on 20 April 2015 on GitHub.[8] Since then, it has been developed actively, with contributions by over 40 developers.[9] On the second anniversary of Redox appearing on GitHub, version 0.2.0 was released.
References
- "Redox Contributors". GitLab. Retrieved 24 March 2019.
- "Porting Redox to ARM (AArch64)". 6 August 2018.
- "What is Redox?". Retrieved 16 May 2020.
- "Redox – Your Next(Gen) Operating System".
- Weisinger, Dick (4 May 2016). "Operating Systems: Rust Redox – An Next-Generation Attempt to Plug Linux OS Gaps". Formtek. Formtek, Inc. Retrieved 17 January 2017.
- Yegulalp, Serdar (21 March 2016). "Rust's Redox OS could show Linux a few new tricks". InfoWorld. San Francisco: IDG Communications, Inc. Retrieved 17 January 2017.
- "Redox: A Rust Operating System".
- Soller, Jeremy (jackpot51) (20 April 2015). "Initial commit of Rustboot-based OS". GitHub. GitHub, Inc. Retrieved 17 January 2017.
- "Redox Repository". GitHub. Retrieved 2016-03-26.