Hacker News new | past | comments | ask | show | jobs | submit login

> Unlike democracy however it is fairly easy to get rid of Linux and replace it with something better.

Is it?




My first thought was "sure, FreeBSD". My second was "hmm, not always so easy".


Yes. Ironically, the hardest parts would be closed source drivers (Nvidia, several others). Linux after all is only a kernel.

One interesting way in which you could do this is to build a wrapper around device drivers so that each device driver becomes a process on top of a microkernel.

The userland can mostly remain unchanged as long as you expose the expected interfaces.


So I think the cause of my confusion is that you're thinking of the technical question, I'm thinking of the socioeconomic cabaret that it would entail.

Microkernels on the nixy side of the industry have so far been crushed beneath the tank tracks of path dependency.


> So I think the cause of my confusion is that you're thinking of the technical question, I'm thinking of the socioeconomic cabaret that it would entail.

Ah ok.

> Microkernels on the nixy side of the industry have so far been crushed beneath the tank tracks of path dependency.

If you shut those down society would grind to an instant halt. They're super successful just not very visible.


Fair enough. I'm mostly concerned with the visible ones.


You mean like Windows NT family (almost), iOS and Mac OS (since X)?


I said "nixy side" with Windows in mind.

OS X is not really very adherent to the spirit of microkernels, earlier and more recent Windows releases have it well beaten in that respect.


Yeah, the technical question is "obvious". The socioeconomic, or "political", if you will, is not.

As you say: It's all about steaming ahead on the mainstream[1]! Woo! /s

[1] I wish you both luck and success if you do something away from the mainstream. Because we need that, at least occasionally.


> The userland can mostly remain unchanged as long as you expose the expected interfaces.

In principle yes, but Linux exposes a lot of interfaces, not all of which are that well documented in all their corners, and some of which are leaky in their abstractions in a way that makes it ugly to implement them on top of other systems. Stuff like: procfs, inotify, cgroups, Linux-specific syscalls like epoll, weird mechanisms like vDSOs, etc. The most heroic attempt I've seen to get all this working on top of another kernel is SmartOS's LX-branded zones, which are really quite impressive and implement most of what I just mentioned, although I believe even they are not 100% [1].

[1] These slides gave an overview of what worked and what didn't as of 2015. Not sure if there's a good updated ref, as I'd assume some things have progressed since then. http://us-east.manta.joyent.com/patrick.mooney/public/talks/...


"only a kernel"

Come on. You think that is the easy part? Just because everybody can hack up some "kernel" and boot their machine into it? I think you know the relevant Linus Torvalds quote in this context ...


I bootstrapped a QnX compatible kernel (with GNU userland) in about 2 years that was then used to power a bunch of special purpose routers. Yes, that's the easy part. As Jacques_Chester already remarked elsewhere in this thread the community part (herding cats) and getting the required buy-in is the hard part.

The first can be done, I'm 100% sure of that, the second I'm not so sure.

I'm kind of surprised that on HN of all places something like a kernel would be considered somehow beyond re-creation or requiring special god-like powers.


of course not, more like somewhere inbetween "easy" and "requires god-like powers". and a zillion man-hours as well.


It requires a good work ethic and a lot of time. It also really helps if you are an experienced programmer. It definitely is not easy but that's more to do with how you organize things than with the actual complexity of the code and a microkernel is super helpful with this aspect, it is far easier to hit the right structure than with a macrokernel, you're more or less forced into doing it right without any way to give in to the temptation of taking a sneak peak at a data structure that isn't yours.


just wait for HURD, it's coming. soon.




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

Search: