For a year, there was no new version of Redox OS, which was first presented two years ago. The past year was used for intensive development. Thus, the previously used C-runtime library newlib was replaced by relibc, an implementation written in Rust. This made it possible to add many more packages to the system. Also in the packaging of this software a lot of work has been invested. The range of software added ranges from the vector graphics renderer Cairo to OpenGL programs and games to LLVM.
Further changes in Redox OS 0.5 concern the kernel. The calls select and poll were implemented correctly. Also new are Pthreads, some system-related system calls and memory mapping. Thanks to these changes, LLVM is better supported and thus the Rust compiler rustc and Mesa with llvmpipe are also running better.
Redox OS is under the free MIT license. Images of Redox OS 0.5 are available for free download. In addition to the variant for a conventional BIOS are now also issues for Coreboot and UEFI ready. Again, this was a lot of work resulting in some Rust libraries for EFI development. The system on the images does not differ at first glance, especially from last year’s version 0.3.5, since most of the changes were internal. Login screen, desktop and applications still look the same as before.
The kernel of Redox OS is written entirely in Rust, which is a unique selling point of Redox OS and clearly sets it apart from Linux. Nevertheless, Redox wants to be a Unix-compatible system, but one that learns from the experience of existing systems. So Redox OS has a microkernel whose design was heavily influenced by Minix. Memory corruption should be ruled out by using Rust instead of C, and faulty drivers can not crash the system as they run as application programs. Redox OS has its own graphical interface, called an orbital.
Submitted by: Arnfried Walbrecht