Linked by nfeske on Thu 29th Nov 2012 17:38 UTC
OSNews, Generic OSes With the just released version 12.11, the developers of the Genode OS Framework are celebrating the break-through to execute the entire build system based on GCC 4.7.2 within their genuine operating-system environment. The new release gets accompanied with new audio drivers from the Open Sound System project, extended support for OMAP4, and numerous stability and performance improvements concerning the underlying kernel platforms.
Thread beginning with comment 544120
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[5]: I feel like a thicko
by nfeske on Tue 4th Dec 2012 11:03 UTC in reply to "RE[4]: I feel like a thicko"
nfeske
Member since:
2009-05-27

Thanks for following the discussion!

BTW, in http://genode.org/about/interview_rel36 by "main-stream computing" (middle of first answer) you mean user-facing/visible, I suppose? Don't some microkernels see wide adoption - just hidden from view a bit, ~embedded?... (also ~L4, so related to your Dresden efforts?) And I love the 4th answer, transformers and Lego analogy ;)

Indeed, microkernels seem to be everywhere but mostly go unnoticed. For example, did you know that there is a microkernel running in the Samsung Galaxy S3? (see here for a press release on that:

http://www.gi-de.com/gd_media/media/en/press/prs_1/pdf_2012/Samsung...

Also in safetly-critical systems, microkernels are ubiquitous. Because the correct functioning of such systems needs to be thoroughly evaluated, the use of microkernels is advantageous to split one complex system into several less complex parts, which can be looked at individually. Those uses of microkernel technology, however, are what I call "special-purpose computing". Those solutions are not designed to scale to dynamic and general-purpose workloads. This is where Genode is different as our declared goal is to scale beyond special-purpose application domains.

That said, there already exist microkernel-based general-purpose OSes. Minix3 or QNX come in mind. However, the user-land architectures of these OSes largely resemble the same concepts as used on monolithic systems, namely Unix / POSIX and a VFS. Genode radically departs from this classical POSIX approach and instead applies microkernel principles and in particular the principle of least privilege to the whole system, not just the kernel. So in contrast to those existing OSes, the critical parts of Genode do not carry the legacy of POSIX with it. It just happened that the resulting Genode API is capable to implement POSIX on top. This is the role of Noux, which I think is a quite fascinating approach to align POSIX compatibility with Genode's architecture.

Generally, too bad that "good enough is the enemy of better" ...the landscape, which form of OS will dominate, might be possibly largely decided; it would be a shame if all this remained mostly an academic curiosity. (maybe it's a bad sign when the project is hard to explain; or maybe the laymen always see ~permission mechanisms as too convoluted ;) - like it was with UAC, and that not even a very extreme mechanism)

We certainly do not strive for domination. :-) As I expressed in the interview, I think that Genode will eventually become integrated into devices without most people being aware of it's presence - similar of how most consumers that buy the Android brand do not realize that they are using Linux.

Are there any notable entities expressing their interest already? (maybe not necessarily the kinds of Red Hat or Google with their million or so servers and Android, but something which could already determine if the project goes somewhere)

Indeed, there is commercial interest. We actually built our small company around this technology and maintain a sustainable business by supporting the framework and conducting industrial research related to Genode. Hence, for me personally, the project already has gotten somewhere. :-)

As a surprising turn of events, there is even commercial interest in using Genode on top of Linux. Apparently, the qualities that the framework brings to the world of microkernels turned out to be valuable on Linux, too. This was quite unexpected.

Reply Parent Score: 1

RE[6]: I feel like a thicko
by zima on Tue 4th Dec 2012 12:47 in reply to "RE[5]: I feel like a thicko"
zima Member since:
2005-07-06

Thanks for further info, I think I really have now a decent idea about what Genode is.

Indeed, microkernels seem to be everywhere but mostly go unnoticed. For example, did you know that there is a microkernel running in the Samsung Galaxy S3?

Reminded me about a big L4 deploymant info, in the most straightforward of places: http://en.wikipedia.org/wiki/L4_microkernel_family#Commercial_deplo...

Also about http://en.wikipedia.org/wiki/Nucleus_RTOS (apparently "used in Mediatek Dual SIM Dual processor based chipsets found on most Chinese phones [...] A large number of Motorola, Samsung, LG, Siemens/Benq, Sagem and NEC mobile phones. [...] Infineon S-Gold2 baseband chip used in Apple's iPhone" and many other non-mobile usages) - but is that a microkernel OS?
At least http://en.wikipedia.org/wiki/Operating_System_Embedded is a microkernel, it seems, and it also apparently has tons of ~mobile deployment.


WRT where Genode could end up - I wonder if it might eventually become a new basis for GNU OS / Hurd, maybe that project will finally go somewhere ;)

Best of wishes with your project.

Edited 2012-12-04 12:52 UTC

Reply Parent Score: 2

RE[7]: I feel like a thicko
by nfeske on Tue 4th Dec 2012 13:43 in reply to "RE[6]: I feel like a thicko"
nfeske Member since:
2009-05-27

I hope that I'm not overly generalizing, but as far as I know, most "RTOS" solutions do not support address spaces, which, however, would be the solely defining point of being a microkernel-based OS. The scheduler, applications, drivers, and networking code tend to be executed in a single address space with no memory protection at all. This is ok for the typical use cases where they are deployed because all userland code is regarded as trusted anyway. So the desire to protect userland components from each other is not very strong in these scenarios. The baseband processor you just mentioned is such a scenario.

Microkernels become attractive not before multiple third-party (and potentially untrusted) components must be integrated on one platform. For example, OK-Labs used to argue that by using their OKL4 microvisor product, baseband functionality and Android can be executed on a single processor, yet both remain isolated from each other. So when using their product, no separate baseband processor is needed anymore. According to their website, they are pretty successful: "The Next Billion Devices" they state. (Admittedly, I am not sure if this number refers to the microvisor or their pico product. The latter seems to be more of an RTOS than a microkernel.)

Reply Parent Score: 1