It’s been two years, but we finally have a proper new Redox release: the Redox team released version 0.9.0 today. Since we’ve been covering all the monthly progress reports from this Rust-based operating system for a long time now, we’ve already covered most of the improvements in this new release, so if you’ve been following along there shouldn’t be any major surprises in here, but let’s do a quick summary anyway just so we’re all up to speed.
I think the primary thing anyone moving from the previous release to the new one will be massive performance and stability improvements, as well as the arrival of the first few applications from System76’s new COSMIC Desktop. Redox is led by Jeremy Soller, a System76 engineer, and since COSMIC uses Rust as well, it only makes sense for the two projects to start benefiting from each other’s progress. Porting Linux and BSD programs has also become a lot easier, which is also evidenced by a whole slew of new ports from those operating systems.
Redox works in both virtual machines and on real hardware, but the former is definitely advised over the latter. In the latest monthly progress report, which was published only a few days ago, it’s mentioned that Redox performance in virtual machines has improved greatly. The team discovered that reading the system time was a huge bottleneck in the context switching code, which affects virtual machines particularly hard because it needs to be read from outside oft he VM. Redox now reads the TSC using KVM’s paravirtualized system time API to remove this bottleneck.
Running in a VM, Redox is now becoming slightly faster than Linux at certain synthetic benchmarks, for example the same-core context switch latency when using POSIX pipes (tested with mitigations=off). More exciting optimizations are coming, both to reduce context switch overhead further towards the hardware limit, and to reduce unnecessary context switches overall.
↫ Ribbon and Ron Williams
As time moves on and both Redox and COSMIC improve, my excitement for this operating system grows along with it. It seems the people working on both projects have their priorities quite straight, and while I’m obviously not going to make any idiotic grand statements about how Redox will replace anything, I wouldn’t be surprised to see it become a fairly solid option for those of us willing to deal with the issues that come with running something that isn’t Windows, Linux/BSD, or macOS.
While I agree “it’s the year of redox” might be a little premature, what this project shows is how complete an alternative OS can become in such a short period of time.
The whole “rust in linux” debate has come to a head again recently, and I wouldn’t be surprised if those being burnt start looking at redox, and bringing masses of experience with them.
I maintain that at the point Linus steps back there will be a power void for his OS/Feifdom and what happens then is anyone’s guess.
Adurbe,
Has Linus talked about this? Linux is far bigger than any one person and it’s obviously not dependent one person any more, including him. But as you say the mere fact that he’s being replaced could trigger power plays. Side note: Torvald’s $150M valuation mades it easy for him to ignore corporate interests, but his replacement might buckle under the temptations of corporate money. I’m reminded of Elop, Nokia’s CEO being dead set on completing the microsoft deal because he would get a $25M kickback.
I am not really expecting Redox to put any pressure on Linux anytime soon. That said, as this kind of software emerges, it will be an interesting test of the claimed benefits of the language. If Redox allows coding with fewer bugs, higher performance, and “fearless” concurrency then the pace of development should be higher at least per capita. Not only could that counter some of the massive lead that Linux has but it might even lure over some developers to counter the momentum that comes from popularity.
It would also be interesting if something like Relibc saw usage beyond Redox itself or even if a Redox native filesystem was to gain traction elsewhere. Everything I said above could apply to those as well and become a flywheel for the Redox project proper.
At the same time, it is interesting to see Redox benefit from COSMIC and all the work System76 is doing there in Linux.
There was a kernel developer who suggested to make a Linux-compatible system in Rust instead of struggling with Rust on Linux. It should be easy to build a wrapper for Linux’ system calls just like FreeBSD did in the past (even easier since Redox uses a microkernel).
jgfenix,
I don’t know why any Rust developer would volunteer their time to work in Linux when they could choose instead to work in a much younger and smaller Redox with a much greater chance to understand the OS and especially the kernel (yeah I know Linux *is* the kernel- see below) outside their own little silo.
Quote from website: “Inspired by Plan 9, Minix, seL4, BSD and Linux”.
They include Linux as an inspiration, but I would have thought their microkernel is much closer to HURD.
So how many of you promoting Rust and microkernels are actually running Redox or have at least gave it a spin in a VM?
Uses a “steal and exploit” license. IBM could shed a lot of wei9hted “hats” with this new “AIX”.
For this reason alone, I’d avoid Redox.