4 ms·
Here's my thoughts. They're not too well developed here to be honest. I'm probably wrong about some of this and need to research more. The "new thing after U
by tenebrisalietum 6y ago
Here's my thoughts. They're not too well developed here to be honest. I'm probably wrong about some of this and need to research more.
The "new thing after Unix" is already here and has been here for some time. It's called Hurd. It depends on a microkernel who's only job is to pass messages from different components, but microkernels don't work well (at least not better than monolithic kernels) on x86 due to context switching overhead.
x86's maintain their architecture due to software compatibility. That's what we're really stuck on. A lot of improvements have been bolted on to x86, like cache, all the instruction stream acrobatics, SIMD, VMs, long mode, etc. but it's still "heavy" ; things are done to make it look fundamentally the same to existing programs.
When CPUs start becoming cheap little tiny things set in a superfast fabric to talk and cooperate with potentially thousands of other cores (like GPUs) as fast as they can chew local instructions, and all the stuff with I/O is worked out, we're ready to take the next step. You can see a little bit of the future with things like the Cell BE, but it needs to be much higher scale to change what OS is dominant.
- throwaway_pdp09 6y agoSome questions if you will > but microkernels don't work well (at least not better than monolithic kernels) In terms of performance, isn't "at least not better" (meaning, as good as) sufficient for performance? Because the point of microkernels afaik aren't about better performance, but security (edit - and robustness). > on x86 due to context switching overhead how high is the extra overhead on hurd over a more conventional OS? TIA
- pram 6y agoHURD? lol are you kidding? It’s older than Linux, and wasn’t even “new” since NextStep was already using the Mach microkernel.
- tenebrisalietum 6y agoUnix itself is ~20 years older than Linux's start. NextStep implemented Unix atop a microkernel for security benefit. Hurd splits all the subsystems of Unix into independent facilities that are connected via the microkernel. One of them can crash and not affect the rest of the system, but also I got the idea reading about Hurd that there's no particular requirement one subsystem lives on a specific CPU or even machine as long as they can communicate. Maybe I'm thinking of Plan 9?
- ohazi 6y ago> Hurd > the future > Cell BE Are you a time traveler from 2000?