Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Rust in the kernel feels like a red herring. For fault tolerance and security, wouldn’t it be a superior solution to migrate Linux to a microkernel architecture? That way, drivers and various other components could be isolated in sandboxes.




I am not a system programmer but, from my understanding, Torvalds has expressed strong opinions about microkernels over a long period of time. The concept looks cleaner on paper but the complexity simply outweighs all the potential benefits. The debate, from what I have followed, expressed similar themes as monolithic vs microservices in the wider software development arena.

I'm not a kernel developer myself, but I’m aware of the Tanenbaum/Torvalds debates in the early 90’s. My understanding is the primary reason Linus gave Tanenbaum for the monolithic design was performance, but I would think in 2025 this isn’t so relevant anymore.

And thanks for attempting to answer my question without snark or down voting. Usually HN is much better for discussion than this.


Linus holds many opinions chiefly based on 90's experience, many not relevant any more. So it goes.

>"My understanding is the primary reason Linus gave Tanenbaum for the monolithic design was performance, but I would think in 2025 this isn’t so relevant anymore."

I think that unlike user level software performance of a kernel is of utmost importance.


Why do you think performance isn't relevant in 2025?

Microkernel architecture doesn't magically eliminate bugs, it just replaces a subset of kernel panics with app crashes. Bugs will be there, they will keep impacting users, they will need to be fixed.

Rust would still help to eliminate those bugs.


I agree it doesn’t magically eliminate bugs, and I don’t think rearchitecting the existing Linux kernel would be a fruitful direction regardless. That said, OS services split out into apps with more limited access can still provide a meaningful security barrier in the event of a crash. As it stands, a full kernel-space RCE is game over for a Linux system.

Go ahead and do it!

You should develop a small experimental kernel with that architecture and publish it on a mailing list.

Just use MINIX, or GNU Hurd.

Even better, be like the Amish, and build your own as much as you can.

Not sure I get the joke. MINIX is not building from scratch. It's a serious choice if one needs a microkernel. Hurd is more experimental but still not Amish.

Sorry I only saw your reply now. It was not meant as a joke. The point was more about being self-reliant. But it was a light-gearted comment.

Then you can try the existing microkernels (e.g. Minix) or a Rust microkernel (Redox). You already have what you wish for.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: