Hacker News new | ask | show | jobs
by raggi 1988 days ago
Redox is a unix style operating system with a unix style design and ABI.

This operating system shares none of those goals, it seems to focus on a particular challenge related to the abstraction between subsystems of the operating system, following a term they call "state spilling". The goal appears to be to design an architecture that supports in-place updates of most components due to them having tightly constrained state management and inter-component dependencies.

2 comments

> The goal appears to be to design an architecture that supports in-place updates of most components due to them having tightly constrained state management and inter-component dependencies.

Strongly reminds me of Erlang-style hot reload.

Have any OS projects based on that architecture ever got off the ground?

I wouldn't call micro-kernels a " unix style operating system with a unix style design", quite the opposite.

The only thing in common with UNIX from current Redox is the POSIX support.

Redox isn't a kernel: it's an operating system, and being POSIX compatible definitely makes it a “unix-style” operating system.

Here, nobody claimed that the Redox kernel was unix-style, so you're fighting a strawman…

A microkernel is a valid implementation for a unix like.

The way that posix filesystem semantics are a kernel provided abstraction is very "unix style".

Yeah totally valid implementation of which there have been a great many attempts, far too many to list here.

Precisely none of them in 3-5 decades has managed to deliver on the promise of microkernels prompting the question:

"Were huge microkernel advantages actually greatly oversold, is posix a massively debilitating factor that prevents microkernel based systems from delivering on their raison d'etre or was every single one of those implementations a poor one? [1]"

[1] including QNX

Yet, all major OSes were human lives are at risk are microkernels, go figure.
Eh, stuff like older vxworks plays loose and fast with the term microkernel that wouldn't fly today. I don't even think they try to claim that it is one anymore until their most recent release where they actually added (optional) process isolation.
I was thinking more of INTEGRITY OS and similar high integrity computing OSes.
What OSes? Citation please.

Microkernel as cpu architecture abstraction layer. Such are only accidentally microkernels and not OSes at all as i understand them. They deliver on what of all those wonderful lists of microkernel benefits?

Stuff like INTEGRITY OS and QNX.
The POSIX layer of QNX is almost exclusively a (collection of) optional services or wrappers in userspace. In what way is it a failure or a poor implementation of a microkernel?
It's an inferior implementation of posix that does not display all those wonderful microkernel os benefits. If it did, we'd hardly be using competing OSes that are insecure, unstable, big-ridden etc. etc. I've never heard of a webserver running on QNX with an enhanced security benefit as a result, have you?
I work at QNX. Of course I've heard of webservers running on QNX with enhanced security as a result. I suspect the lack of widespread use of QNX is because it's a costly, commercial, and not marketed toward personal or cloud computing and not due to technical issues. Marketing trumps technical when it comes to purchasing decisions.
Except contrary to urban myths that isn't exclusive to UNIX and precedes it.
I never said that was exclusive to unix likes, only that it being a microkernel doesn't preclude it from being a unix like.
"kernel provided abstraction is very "unix style" reads otherwise.
Providing _a posix filesystem_ as a kernel abstraction is what I said. Which is not very standard for microkernels, and makes it (redox) pretty unix like at the kernel level.

The overall point being that both, microkernels can be unix likes, and redox particularly and at the kernel level leans in to being a unix like.