3 ms·
> Linus is not saying that microkernels are architecturally bad. He concedes that it is an architecturally superior idea This is what he actually said on Slash
by smegel 14y ago
> Linus is not saying that microkernels are architecturally bad. He concedes that it is an architecturally superior idea
This is what he actually said on Slashdot (my emphasis added):
> I think microkernels are stupid. They push the problem space into communication, which is actually a much bigger and fundamental problem than the small problem they are purporting to fix. They also lead to horrible extra complexity as you then have to fight the microkernel model, and make up new ways to avoid the extra communication latencies etc. Hurd is a great example of this kind of suckiness, where people made up whole new memory mapping models just because the normal "just make a quick system call within the same context" model had been broken by the microkernel model.
- zanny 14y agoI really like how Plan 9 solved communication through sockets and files (which is how the OS doesn't care if any part of the system is remote or local). Just sayin, it has been done pretty elegantly.
- brian_cloutier 14y agoYou and Linus are working off different definitions of "solved". Sure they did it, he never said it can't be done. But does it run efficiently and quickly?
- zanny 14y agoIt isn't slow enough for me not to notice while tinkering with it. Of course, I'm running it a kvm vm and have 8 cores of 3.5 ghz going on. It would be hard for a terminal environment to be slow on that.
- zanny 14y agoIt isn't slow enough for me not to notice while tinkering with it. Of course, I'm running it a kvm vm and have 8 cores of 3.5 ghz going on. It would be hard for a terminal environment to be slow on that. I'd aruge: not slow enough not to be worth the benefits of userspace everything, the ability to have a completely distributed system, and not slow enough not to make the interaces with the kernel not wonderful. I much like how plan 9 skips the whole RPC and syscall nonsense and does almost straight file IO and socket communication for everything. It is like Java vs C - it isn't slow enough not to take the niceties in some circumstances. High performance computing might like the Linux kernel, but as a developer who wants working applications that are really easy to interface with OS features, Plan 9 has that nailed.
- fffggg 14y agoTerminal environment? You're gauging the performance of the kernel by interactive typing performance? I don't know where to start.
- CrLf 14y agoHow is that different? A microkernel can be superior in theory, while still being stupid in practice. In theory you can ignore the realities of communication, in practice you can't. That looks like the definition of a theorerically superior idea to me.