this post was submitted on 29 Aug 2024
518 points (98.7% liked)

Linux

48044 readers
764 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Wedson Almeida Filho is a Microsoft engineer who has been prolific in his contributions to the Rust for the Linux kernel code over the past several years. Wedson has worked on many Rust Linux kernel features and even did a experimental EXT2 file-system driver port to Rust. But he's had enough and is now stepping away from the Rust for Linux efforts.

From Wedon's post on the kernel mailing list:

I am retiring from the project. After almost 4 years, I find myself lacking the energy and enthusiasm I once had to respond to some of the nontechnical nonsense, so it's best to leave it up to those who still have it in them.

...

I truly believe the future of kernels is with memory-safe languages. I am no visionary but if Linux doesn't internalize this, I'm afraid some other kernel will do to it what it did to Unix.

Lastly, I'll leave a small, 3min 30s, sample for context here: https://youtu.be/WiPp9YEBV0Q?t=1529 -- and to reiterate, no one is trying force anyone else to learn Rust nor prevent refactorings of C code."

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 118 points 2 months ago (10 children)

Oof, that video... I don't have enough patience to put up with that sort of thing either. I wonder how plausible a complete Rust fork of the kernel would be.

[–] [email protected] 98 points 2 months ago (1 children)

It's always been this way. Except that it was kernel developers arguing with kernel developers over C code. Now it's relative newcomers arguing with kernel developers over Rust code that the kernel devs don't necessarily care about. Of course it's going to be a mess.

A fork is of course possible, but operating systems are huge and very complex, you really don't want to alienate these folks that have been doing exclusively this for 30 years. It would be hard to keep the OS commercially viable with a smaller group and having to do both the day to day maintenance, plus the rewrite. It's already difficult as it is currently.

Rust will be a huge success in time, long after the current names have lost their impetus. This is not a "grind for 4 years and it's done" project.

[–] [email protected] 68 points 2 months ago (1 children)

That person in the audience was really grinding my gears. Just let the folks you're talking to answer you; no need to keep going on your diatribe when it's based on a false assumption and waste the whole room's time.

[–] [email protected] 18 points 2 months ago

let's not lose focus of what's important here, and that is a room full of people hearing my voice and paying attention to me for as long as I manage to hold it

[–] [email protected] 32 points 2 months ago

I wonder how plausible a complete Rust fork of the kernel would be.

It sounds highly impractical, and it would probably introduce more issues than Rust solves, even if there were enough people with enough free time to do it. Any change must be evolutionary if it's going to be achievable.

[–] [email protected] 26 points 2 months ago (2 children)

NOT a fork of Linux, but Redox is aiming for a Unix-like OS based on Rust – but even with “source compatibility” with Linux/BSD and drivers being in userspace, my guess would be hardware drivers are still going to be a big speed bump

[–] [email protected] 11 points 2 months ago

All you need nowadays for a decent Unix-like is compatibility with a handful of Linux softwares and a web browser. Hell, if you could get WINE working on your kernel you could maybe support as many Windows apps/games as Linux for free.

The big issue, as I see it, is performant drivers for a wide range of hardware. That doesn't come easy, but I wonder if that can be addressed in a way I'm too inexperienced to know.

But projects like Redox are a genuine threat to the hegemony of Linux - if memory safety isn't given the true recognition it deserves, projects like Redox serve to be the same disrupting force as Linux once was for UNIX.

[–] [email protected] 4 points 2 months ago

Redox also takes some inspiration from Plan9 and https://doc.redox-os.org/book/ch05-00-schemes-resources.html is interesting. Also reading https://drewdevault.com/2022/11/12/In-praise-of-Plan-9.html made me a bit more interested in things trying to be more Plan9-like than Unix-like.

[–] [email protected] 13 points 2 months ago

Just fork and port Ext4 to Rust and let the little shit sit in his leaking kiddy pool out back.

[–] [email protected] 7 points 2 months ago

There's certainly a history of Unix and Unix-like forks; which is rather simple compared to the Linux distro forks (go right to the big pic).

[–] [email protected] 6 points 2 months ago (1 children)

There is a fully Rust based Unix-like OS out there, it’s called Redox and it’s very cool

[–] [email protected] 4 points 2 months ago

It's also a microkernel and intentional not POSIX compliant (but it's close to compliant). I like the project, but it's very experimental on purpose, so we should set our expectations accordingly. I'd love to see it become a success, but it may not be or it may only be successful in a smaller niche than the current Linux ecosystem.

That said, it seems very open to new contributors. I hope more people can help it along.

[–] [email protected] 2 points 2 months ago (1 children)
[–] [email protected] 1 points 2 months ago

Site is unreachable

[–] [email protected] -1 points 2 months ago

Why not React?

[–] [email protected] -2 points 2 months ago

You should do it. The Linux kernel is a C project. You can't change a 30-year project on a dime. Make your own project with Rust and hookers.