So I have yet to see Redox mentioned here

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
User avatar
jojo
Member
Member
Posts: 138
Joined: Mon Apr 18, 2016 9:50 am
Libera.chat IRC: jojo
Location: New York New York

So I have yet to see Redox mentioned here

Post by jojo »

<shill>
http://www.redox-os.org/
</shill>

I'm not involved with it (I still haven't even learned Rust as of yet), but these guys didn't start all that long ago and yet the project has boomed and shown some serious progress.

As such, I've been really surprised to see, to my knowledge, no mention of it here. But maybe I'm just an ******* who hasn't been paying attention.
User avatar
BrightLight
Member
Member
Posts: 901
Joined: Sat Dec 27, 2014 9:11 am
Location: Maadi, Cairo, Egypt
Contact:

Re: So I have yet to see Redox mentioned here

Post by BrightLight »

Looks pretty neat, actually.
You know your OS is advanced when you stop using the Intel programming guide as a reference.
User avatar
Roman
Member
Member
Posts: 568
Joined: Thu Mar 27, 2014 3:57 am
Location: Moscow, Russia
Contact:

Re: So I have yet to see Redox mentioned here

Post by Roman »

You're right, it hasn't been mentioned here (except for the Wiki) according to the search results. I heard about it earlier. That's a great project!
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
- Alan Kay
Hellbender
Member
Member
Posts: 63
Joined: Fri May 01, 2015 2:23 am
Libera.chat IRC: Hellbender

Re: So I have yet to see Redox mentioned here

Post by Hellbender »

Browsing their git repository, I started wondering how they call is 'microkernel' even in design. The kernel directory includes stuff like audio, disk, drivers, graphics, network, usb.. Either they organize their codebase funny, or just use that phrase for marketing.
Hellbender OS at github.
gerryg400
Member
Member
Posts: 1801
Joined: Thu Mar 25, 2010 11:26 pm
Location: Melbourne, Australia

Re: So I have yet to see Redox mentioned here

Post by gerryg400 »

Hellbender, yeah I thought the same thing. I didn't look very closely but I did notice in their docs that they are hoping to reduce the size of the kernel. Perhaps they intend to move it out.
If a trainstation is where trains stop, what is a workstation ?
User avatar
Schol-R-LEA
Member
Member
Posts: 1925
Joined: Fri Oct 27, 2006 9:42 am
Location: Athens, GA, USA

Re: So I have yet to see Redox mentioned here

Post by Schol-R-LEA »

shrug The term 'micro-kernel' has gotten stretched pretty far over the years, going back to the original Mach kernel or earlier. As I've mentioned here before, I've even seen the Windows NT kernel described as one (in one of William Stallings' book), which is total nonsense. Almost all kernels described as micro-kernels are actually hybrid kernels and quite a few are not 'micro' at all.

Keep in mind that 'micro-kernel' isn't quite what most people think it is. While most OS-devvers know that one of the defining qualities of a micro-kernel is that device drivers are separated from the kernel, many are under the impression that this is the only such defining quality, and only a few seem to know the historical origins of this and the original purpose for such designs. Plenty seem to think that it is defined as 'having drivers run in userspace instead of kernel space', which is a notable misunderstanding as it highlights the changes that have occurred in stock hardware since the concept was developed.

In point of fact, the original definition of 'micro-kernel' was a system that did not compile the whole operating system into a single binary, and used message-passing for inter-process communication and synchronization. It did not discuss separating part of the system facilities out into userspace at all.

The reason for this is simple: the primary purpose of the design was to build a multitasking system that could be stable on systems that had no hardware memory management, like the 6809, 68000, and 8086. The whole idea came about as a way of working around the limitations of the then-current microprocessors without resorting to a monotasking system. Like with the contemporaneous development of RISC hardware (which also had its roots partly in the need to get around a barrier, in that case the limits of the IC foundry that UC Berkeley set up for their students in the 1970s), it proved to have several technical advantages unrelated to that, but those didn't become evident until later.

While they inspired a lot of innovation, and led to pretty much the elimination of monolithic kernels in their original form (essentially all non-toy systems called monolithic today are also hybrid, including Linux and Windows), 'pure' micro-kernels were a solution to something that is no longer a problem on 99% of stock hardware.
Last edited by Schol-R-LEA on Wed Apr 20, 2016 7:15 am, edited 1 time in total.
Rev. First Speaker Schol-R-LEA;2 LCF ELF JAM POEE KoR KCO PPWMTF
Ordo OS Project
Lisp programmers tend to seem very odd to outsiders, just like anyone else who has had a religious experience they can't quite explain to others.
User avatar
jojo
Member
Member
Posts: 138
Joined: Mon Apr 18, 2016 9:50 am
Libera.chat IRC: jojo
Location: New York New York

Re: So I have yet to see Redox mentioned here

Post by jojo »

Purely devil's advocate:
In point of fact, the original definition of 'micro-kernel' was a system that did not compile the whole operating system into a single binary, and used message-passing for inter-process communication and synchronization.
So kind of like NT, then?
User avatar
Schol-R-LEA
Member
Member
Posts: 1925
Joined: Fri Oct 27, 2006 9:42 am
Location: Athens, GA, USA

Re: So I have yet to see Redox mentioned here

Post by Schol-R-LEA »

jojo wrote:Purely devil's advocate:
In point of fact, the original definition of 'micro-kernel' was a system that did not compile the whole operating system into a single binary, and used message-passing for inter-process communication and synchronization.
So kind of like NT, then?
Yeah, hence the claim. I'm not saying that the claim doesn't have any merit, just that it is 'technically correct - the best kind of correct', rather than a meaningful description. Also, the NT kernel has several kinds of IPC primitives, not just message-passing - I should have said 'used message-passing as the sole primitive for inter-process communication and synchronization', since the primary idea was that less abstract synchronization primitives such as semaphores were more prone to bugs, and more likely to get misused or sabotaged.

Anyway, the reason for this whole pedantic aside was not to say that the term was being misused, but that the idea has evolved a lot since it arose. In the real world, 'pure' designs are rarely practical ones - and yes, I am aware that there is a bit of hypocrisy in me saying that, but I am no longer aiming at writing a world-beating OS; purity is just fine for a research project, and in fact is in some ways a necessity to reduce implementation variables.
Rev. First Speaker Schol-R-LEA;2 LCF ELF JAM POEE KoR KCO PPWMTF
Ordo OS Project
Lisp programmers tend to seem very odd to outsiders, just like anyone else who has had a religious experience they can't quite explain to others.
gerryg400
Member
Member
Posts: 1801
Joined: Thu Mar 25, 2010 11:26 pm
Location: Melbourne, Australia

Re: So I have yet to see Redox mentioned here

Post by gerryg400 »

I don't accept the word 'hybrid' as an accurate, technical description of anything unless the description tells me what 2 things it is a hybrid of. Windows NT and Linux may be hybrid kernels but they are not hybrids of a microkernel and a monolithic kernel. They are simply different variants of the monolithic kernel. As far as I can tell neither has any of the important traits of a microkernel.

Of course, if 'hybrid' is being used as a marketing term then we can ignore its actual meaning as we ignore the literal meaning of most terms used in marketing. I have no problem with that.

Back on topic, Redox does claim to be a microkernel. Unfortunately, I don't read Rust so can neither confirm nor deny it but reading the docs makes me think that it probably is a microkernel.
If a trainstation is where trains stop, what is a workstation ?
hatred45
Posts: 2
Joined: Mon Mar 06, 2023 7:27 pm
Libera.chat IRC: hatred_45

Re: So I have yet to see Redox mentioned here

Post by hatred45 »

Redox OS progressed a lot since 2016, in the beginning things needed to be moved out from the kernel.

Actually the kernel have less than ~9k SLOCs and have WIP x86/ARM64 ports.

The changes since 2016 are gigantic to say here, you can read in our blog section of the website (News page).

We are at GitLab, we have a FAQ, self-hosting is close, our own in-house C library and more than 100 software ported (some recipes contains dirty patches because we don't have complete POSIX support in our C library).

https://redox-os.org

I'm the Community/Documentation Manager of this project.
Post Reply