A motivated group of Rust developers could build a production ready mostly Linux-compatible kernel from scratch within 5 years without doing any politics on LKML
-
A motivated group of Rust developers could build a production ready mostly Linux-compatible kernel from scratch within 5 years without doing any politics on LKML
Passionate 3-4 person hobby OSes have achieved impressive levels of Linux compatibility very quickly. Pour the level of enthusiasm that Rust-in-Linux has into a greenfield project to build a Linux-compatible kernel and you would have astonishing gains very quickly.
-
Making a novel OS design is hard (Redox is trying) but if you are aiming to match the design of an established system and maximize compatibility then it's much, much easier.
-
@drewdevault I'm inclined to believe you, but isn't there a case to be made that trying to stay in-tree is the "noble" course of action because it avoid splintering off development effort and forcing users to make a tough choice of when to adopt the new solution?
-
@convexer it depends on the roadmap and target audience. Rust-in-Linux is an attractive target because everyone already uses Linux and they can get Rust into everything by making their play there. But it's an uphill battle and I think it's overall a bad idea; I blogged about this before and my opinions have been refined a bit since (more thought + watching how it's developed).
Making a new OS which is Linux-compatible would be much, much easier and faster.
-
I think there needs to be some time to heal but the Rust-in-Linux folks should really rally around a new Linux-compatible kernel project from scratch. It'd be wild. It would probably actually work, whereas Rust-in-Linux is still a huge gamble and a burnout machine.
-
Drew DeVaultreplied to Drew DeVault last edited by [email protected]
Rust would be a really good fit for a big Linux-style monolithic kernel and they could realize a lot of gains very, very quickly IMO. Not a great fit when retrofitted onto the Linux establishment.
-
@drewdevault I wonder how long it would take for a rust kernel to compile when it's the same size as the linux kernel.
-
@drewdevault
Who would use it? What would the selling point be for users? It being in rust is, by itself not one; nobody cares what language is being used. And while the number of bugs would drop, the kernel is already fairly stable for its users.They'd need to have some other, positive reason to go through the pain and uncertainty of switching.
-
@jannem this is where thinking about your target audience is important. It would make a lot more sense to appeal to, say, a datacenter use-case first than a desktop user. Or a mobile use-case, where the vendor can ensure that all of the drivers they need for their device are present. General-purpose comes later.
-
@martijnbraam @drewdevault I seriously hope that rust will "fix" that compilation time.
Waiting 15 minutes for a small program, e.g. like Yazi to compile is wild.
-
@drewdevault RIIR HURD! RIIR HURD!
-
Anyone coming in to @ me with bad-faith insults targeting Rust developers is cruisin' for a blockin'
-
@drewdevault although if you RIIR Linux you could call it Rinux
-
@drewdevault would you have to RIIR glibc as well to keep compatible? that would be awesome
or has someone already RIIR'd glibc
-
@aeva RiiR glibc is a separate concern from implementing the Linux ABI
-
@drewdevault Good point. But those use cases also need a positive reason to pick it.
I work in HPC - a datacenter field - and just the thought of having to deal with kernel level compatibility problems for user code is enough to dismiss it out of hand.
For mobile, perhaps a more permissive license might do it. But then you end up with the drawbacks of permissive licenses too...
-
@drewdevault I feel the driver situation could still kill such an effort, unless you can get a lot of important players on board to develop the Rust drivers too.
I wonder what would happen, if instead Rust In Linux did a harder fork, and stopped playing LKML politics with their tree, and be able to pull drivers from mainline, while they rewrite various subsystems in Rust
-
@Sobex I think this is a fool's errand to be honest. The kernel has too much churn for this to be realistic.
-
@drewdevault Is there a platform where the amount of work to do for drivers is manageable for a from scratch linux replacement ? (And distro could then pick between the rinux or the linux kernel on that platform, and then extend the work to other modern platforms one at a time)
Or are there a lot of drivers that can be used on most platforms, and that would need to get RIIR before such a kernel could replace linux ?
-
@Sobex can we just collectively agree to shut the fuck up about drivers? Linux didn't have a competitive set of drivers for a long time, either, and here we are. I am really not prepared to revisit the bloody driver question