Greg Kurtzer's Ginux is now a userspace kernel (github.com)
91 points by d3Xt3r 7 hours ago
qalmakka 3 hours ago
The question I always have when I see these userspace kernels is, Linux in Userspace exists. You can boot Linux with a root in userspace already. Why write a new kernel from scratch instead of fixing/improving usermode Linux instead, which has the benefit of providing the entire Linux API already?
xscott an hour ago
Option A) Everyone shares one OS (container, sandbox, kernel, firewall, whatever). It gets a lot of eyes on it to find bugs. Hacker fuzzes it with a lot of tokens offline. He finds one exploitable vulnerability and he owns everyone.
Option Z) Everyone vibe codes their own custom OS. Each implements and exposes only what they want. Hacker has to beat up on it online to find vulnerabilities. He finds one and he only owns that one machine.
There's probably some middle ground between A and Z, but monocultures are fragile. All eggs in one basket, potato famines, banana fungus, etc...
joshbuddy a few seconds ago
Heterogeneity is bffs with security though. Maybe option z isn't so bad after all.
jareklupinski 18 minutes ago
Option L) Hacker realizes theres more to be gained from joining the builders and shows both sides how to secure their lots against people worse than them
acd 3 hours ago
How is Ginux different from User mode Linux?
anygivnthursday 2 hours ago
It seems to be more like gVisor than UML, providing a restricted kernel interface as opposed to the full kernel.
asdf88990 3 hours ago
It is AI slop.
asdfsa32 7 hours ago
This is kind of the wrong approach when linux namespaces exist and rootless namespaces are approach full spectrum.
weinzierl 5 hours ago
The Linux kernel is a gigantic attack surface with a ton of legacy stuff most modern applications will never need. Namespaces do not really help with this, but userspace kernels can. (Haven't looked into Ginux enough to know if it does.)
That is also why I believe the namespace approach, and by extension Docker-like containerization, is a dead end when it comes to isolation. I hope something like gVisor will win.
This is even more important since agents have turned isolation from a datacenter topic into everyone's concern.
asdfsa32 3 hours ago
> The Linux kernel is a gigantic attack surface with a ton of legacy stuff most modern applications will never need. Namespaces do not really help with this, but userspace kernels can. (Haven't looked into Ginux enough to know if it does.)
This is incorrect. If you can't trust Linux because it is gigantic, you can't trust a whole another new kernel. Userspace is not blackmagic.
stingraycharles 6 hours ago
I’m still fascinated by the approach, though. It seems to me that it sits somewhere between cgroups and virtual machines.
I do wonder what problem it solves, as I don’t think that it provides the same security guarantees that micro-VMs like firecracker do?
eddythompson80 6 hours ago
It’s the same approach as gVisor. Fairly decent isolation if your application can work on it, but your SOL if a scenario comes up that doesn’t work. VMs give you pretty much 100% Linux compatibility at the expense of density, optimal resource allocation and startup time. gVisor gives you excellent startup time, resource allocation and density at the expense of some app compat and performance at the extremes
Edit: at least with gvisor you get close to a decade of work on compat. gVisor can support some rootless containers scenarios and systemd these days.
mbreese 6 hours ago
I’d be very interested in it if it started to approach VM style isolation without needing KVM access (or qemu).
But I’m not sure if that is really possible.
The use case I’m thinking about is a sandbox exec isolation on an HPC cluster without Docker. I know singularity/apptainer exist, but I’m always looking for something that could make that environment more flexible. It is a tight security environment, so we are always limited in what we can do.
eddythompson80 5 hours ago
photios 6 hours ago
I wonder if this can grow into a capability-based security tool.
Pawenniag 3 hours ago
Rootless namespaces are getting better, but they don't eliminate the host kernel attack surface
imtringued an hour ago
You can combine hypervisors, user space kernels and linux namespaces all into one solution. The attacker will have to escape all of them.
nessex 6 hours ago
Isn't this also adding a capability sort of like OpenBSD's pledge?
worthless-trash 5 hours ago
If it has to go through another layer , hopefully without ring0 privs, which more than likely may filter out a number of exploit vectors, how is this the wrong approach ?
Breaking this layer doesn;t automatically give ring0 privs across the hardware.
photios 6 hours ago
> Telling someone's research and exploration is wrong...
Never change, HN, never change :D
asdfsa32 3 hours ago
The project says:
> That research phase is complete.
So not sure what part of it now constitutes "research and exploration".
ajasmin 5 hours ago
So how exactly can you control multiple isolated address spaces for the leaf user processes and how do you handle syscalls? Does the host kernel have facilities for normal user processes to do so?
krautsauer 2 hours ago
From the README
> The current implementation includes a security-focused x86-64 interpreter and a balanced native ptrace backend;
ptrace allows you to have the kernel redirect syscalls back to userspace, mostly for debugging purposes. "balanced" here refers to speed, but the overhead is still quite high.
TnS-hun 6 hours ago
Post from yesterday: https://news.ycombinator.com/item?id=50424147
ajasmin 5 hours ago
Talk about pivoting. I guess that's what you call lean and agile.
thraway71263 5 hours ago
probably you get more isolation with jslinux
hkt 5 hours ago
My immediate thought was this: https://en.wikipedia.org/wiki/User-mode_Linux
More seriously, it is a great use of indirection insofar as replacing the full Linux kernel is a gargantuan task. A userspace kernel per task or task group.. makes a lot of sense. I'd be interested to know how it captures syscalls - eBPF? It wasn't obvious from a skim of the readme.
This kind of give-me-this-interface work seems pretty perfect for LLMs, too.
bobfloyd 28 minutes ago
Nobody will take him seriously.
up2isomorphism 7 hours ago
The issue with this kind of thing is nobody will take it seriously.
mbreese 7 hours ago
Why? Because a user space kernel is a bad idea? Or because of the AI use when writing it?
I’m still trying to figure out exactly what it is.
jmull an hour ago
To me, it's that little effort was put into it, so no commitment has been demonstrated. You wouldn't want to build anything serious on top of it because you'd probably just have to throw it away.
A project picked up casually, for a short time, is likely to be dropped casually, in a short time.
jeroenhd 5 hours ago
A userspace kernel is already pretty niche. Not many people will get anything serious out of it.
The slop problem is also a challenge to overcome. The project barely existed and has already pivoted in a completely new direction. Who knows when this direction bores the author and we get yet another pivot. Or the author loses interest and we end up with a dead pile of abandoned code like so many other LLM generated projects.
The previous state of the project could've made for an interesting VM runtime (safety of Rust without the issues that come with the lack of ported drivers). For this new direction, I don't think there's a similar sort of demand.
Stating that nobody will take it seriously is probably an exaggeration, but I consider these projects to be toys for the author to play with, I don't see why you would take more interest than going "huh, neat I guess".
up2isomorphism 6 hours ago
Why should someone spend anytime on this kind of technical piece that is not created by human? Think about what you will get from this, the answer is pretty obvious.
luckystarr 5 hours ago
cannonpalms 35 minutes ago
shevy-java 5 hours ago
Guys - AI slop is winning the war. Soon the Top 500 Supercomputers will run AI-Ginux rather than Linus-Linux.
frevib 5 hours ago
When something has to be secure and battle-tested, this won’t happen. It can be written with the help AI, but it needs many humans to verify.
vconnor 2 hours ago
Don't worry, Linus-Linux already stands on the AI slop side.
jasonvorhe 2 hours ago
Can you link to an AI contribution to the mainline kernel that qualifies as slop?