5 ms·
Plus now, the app devs, now all turned devops because talent is scarse and demand is high, get to handle the complexity of concurrency, networking and reliabili
by BiteCode_dev 7y ago
Plus now, the app devs, now all turned devops because talent is scarse and demand is high, get to handle the complexity of concurrency, networking and reliability. This adds to deployment/testing/development setup, and when you change stack or job, the architecture slightly different and you need to learn it all over again.
Funnily enough, we couldn't make the microkernel concept works despite an homogeneous, integrated environment as a basis. But we are fine building frankenstein OS images, hacking multiple graph-shaped systems to make them play together, and call that a success.
Now don't get me wrong, I understand perfectly the benefits of it. But somehow, it feels like we arrived at the right result by the worst possible path, and at a price way higher than it should be.
- panpanna 7y agoWhat if the pure microkernel approach is flawed and hypervisors offer a sensible middle ground?
- jacquesm 7y agoMost of the people that rail against pure microkernels have zero experience actually building stuff with them. Those that do have that experience have hard proof that systems built in this way are more reliable and easier to build than others. Hypervisors have their own place in the hierarchy, they do not compete effectively with microkernels on their own turf.
- naasking 7y agoThe typical problem with microkernels is poor backwards compatibility, mainly due to POSIX. If you add POSIX compatibility, you don't gain any isolation, performance or security benefits of microkernels, and changing your thinking and your programs to gain those benefits requires significant work when they're written against the POSIX API. Building them that way from scratch is pretty much just as easy as writing programs in UNIX, modulo the lack of tooling that is mostly POSIX-based.
- gtirloni 7y agoIf you don't mind this tangent question... Is there a microkernel API that has more acceptance nowadays? In other words, where should anyone wanting to work on real world / enterprise systems based on microkernel look?
- meddlepal 7y agoIsn't Windows NT the poster child for a non-POSIX mainstream microkernel?
- naasking 7y agoNT kernel is not really a microkernel. It tool inspiration from microkernels but it's still a highly modular monolithic kernel.
- naasking 7y agoseL4: https://sel4.systems/ https://sel4.systems/ The kernel is even formally verified, and it's very widely deployed.
- panpanna 7y agoDefine wildly. The Okl4 kernel in iPhones is extremely limited in its functionality, you could probably run that code even without an Os. It could also be argued if in its current form it is really a microkernel. Furthermore, sel4 and okl4 are not the same product. (nothing bad on sel4, I have used it myself and I personally know the people behind the project. But it's not what you think it is)
- naasking 7y agoNot what I think it is? It's a capability secure microkernel, that's literally all I've ever claimed. I'm not sure what you think I've been saying.
- nicklarsennz 7y ago
- panpanna 7y agoWould you consider the gnu hurd folks experienced enough?
- jacquesm 7y agoNo. I thought GNU Hurd was a great idea executed poorly. QnX is that same idea executed in an excellent and pragmatic way.