this post was submitted on 18 Sep 2024
282 points (97.3% liked)

Linux

48157 readers
659 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
 

Linus Torvalds Speaks on the the divide between Rust and C Linux developers an the future Linux. Will things like fragmentation among the open source community hurt the Linux Kernel? We'll listen to the Creator of Linux.

For the full key note, checkout: Keynote: Linus Torvalds in Conversation with Dirk Hohndel

The Register's summary: Torvalds weighs in on 'nasty' Rust vs C for Linux debate

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 42 points 1 month ago (4 children)

I don't want to watch a video about it.

I'd like to know it, but a couple of sentences wouldn't have hurt

[–] [email protected] 3 points 1 month ago* (last edited 1 month ago)

I also dont like videos for this stuff. Summarized using kagi's universal summarizer, sharing here:

  • The integration of Rust into the Linux kernel has been a contentious topic, with some long-term maintainers resisting the changes required for memory-safe Rust code.
  • The debate over Rust vs. C in the Linux kernel has taken on "almost religious overtones" in certain areas, reflecting the differing design philosophies and expectations.
  • Linus Torvalds sees the Rust discussion as a positive thing, as it has "livened up some of the discussions" and shows how much people care about the kernel.
  • Not everyone in the kernel community understands everything about the kernel, and specialization is common - some focus on drivers, others on architectures, filesystems, etc. The same is true for Rust and C.
  • Linus does not think the Rust integration is a failure, as it's still early, and even if it were, that's how the community learns and improves.
  • The challenge is that Rust's memory-safe architecture requires changes to the existing infrastructure, which some long-time maintainers, like the DRM subsystem people, are resistant to.
  • The Linux kernel has developed a lot of its own memory safety infrastructure over time for C, which has allowed incremental changes, whereas the Rust changes are more "in your face."
  • Despite the struggles with Rust integration, Linus believes Linux is so widely used and entrenched that alternative "bottom-up grown-up from the start Rust kernels" are unlikely to displace it.
  • Linus sees the embedded/IoT space as an area where alternative kernels built around different languages like Rust may emerge, but does not see Linux losing its dominance as a general-purpose OS.
  • Overall, Linus views the Rust debate as a positive sign of the community's passion and an opportunity to learn, even if the integration process is challenging.
[–] [email protected] -1 points 1 month ago

YouTube has a transcribe feature you could use. Or you could keep scrolling if this content isn't relevant to you.

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

FWIW, it's a 9 min video and doesn't contain anything earth shattering or easily summarized. Basically there is some friction between C and Rust devs, and Linus doesn't think that it's such a bad thing (there has be interesting discussion) and it's way too early to call Rust in the kernel a failure.

[–] [email protected] 5 points 1 month ago

1, 90 or 9 minutes, in any case it needs a speaker to be watched, and often mobile data cap when not at home.

and a fair amount of rewinds for a lot of non-native english ~~speakers~~ knowers

[–] [email protected] 3 points 1 month ago (1 children)
[–] [email protected] 3 points 1 month ago

This summary seemed pretty good though.

[–] [email protected] 19 points 1 month ago (1 children)

Rust is harder to write but infinitely safer, and equivalent in speed.

[–] [email protected] 22 points 1 month ago (4 children)

It's harder to write because it forces you to be careful.

[–] [email protected] 10 points 1 month ago

C is easier to get a program to compile. Rust is easier to get a program working correctly.

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

And because it looks like C, JavaScript, Bash and a few others all mixed up together.

I've heard Rust described as “Rust is what you get when you put all the good features of other programming languages together. You can't read it, but it's freaking fast!”

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

Looking back on my comment, I don't know why I was thinking of Bash. It does look a lot like JavaScript/Typescript, and C.

[–] [email protected] 0 points 1 month ago (1 children)

it's more "it forces you to make it burrow checker friendly".

A burrow checker is not the only mechanism to write safe code. All the mess of Rust is all because this is the strategy they adopted.

And this strategy, like everything in this world, has trade offs. It just happens that there are a lot, like, - a lot -, of trade offs, and those are insufferable when it comes to Rust...

[–] [email protected] 4 points 1 month ago (1 children)
[–] [email protected] 6 points 1 month ago

Gotta watch out for those rabbits messing with your kernel

[–] [email protected] 16 points 1 month ago (1 children)

It forces you to be careful in the way it wants you to be careful. Which is fine, but it makes it a strange beastie for anyone not used to it.

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

Yes

But the trade off is well worth it.

[–] [email protected] 3 points 1 month ago (1 children)

It can be, sure. I prefer garbage collectors but I'm not doing systems programming.

[–] [email protected] 7 points 1 month ago* (last edited 1 month ago) (1 children)

I feel like a garbage collector would be too much a performance hit for kernel stuff.

[–] [email protected] 3 points 1 month ago

2 things:

  1. It's more the determinacy, a GC randomly fires up and your systems stops for some long amount of time. There are pauseless GCs but that's a different nightmare.

  2. The kernel has things similar to GCs. They're used for more specialized tasks, and some (like rcu) are absolute nightmares that have take decades to get working.