The Genode project has released the version 9.05 of their operating-system framework. The highlights as detailed in the release notes are the support of the OKL4 kernel as base platform, the introduction of basic USB support, the integration of Qt4 into the main-line source tree, and 64-bit support.
Furthermore, the release notes report on the progress of executing Linux as user-level subsystem on top of Genode. At present, there already exists a prototype implementation of OKLinux booting up on top of the OKL4 variant of Genode. The new release is available at the project’s download page.
With the current release, the project has reached a state that enables the creation of applications, protocol stacks, and device drivers that are portable among four different kernel platforms, namely Linux (both 32 bit and 64 bit), Fiasco, Pistachio, and OKL4. According to the updated road map, the next release will be focused on non-functional refinements and optimizations such as support for shared libraries, and the decomposition of the network and USB stacks. Towards the end of the year, the project aims to be able to host unmodified POSIX applications executed within one or multiple lightweight POSIX execution environments as Genode sub systems.
It sounds like it has similar goals to the GNU Hurd OS project, but with more active development. They even use the same L4 microkernel family. As a non expert on microkernels in general, I was wondering if anyone could point out the differences between the two. Or even expound upon the benefit of ruining the Linux kernel in a user mode virtual machine on top of a micro kernel.
it’s all about security and stability by separation of tasks. the webpage explains it rather well:
http://genode.org/documentation/general-overview
and i presume that the developer would prefer not to run linux on top of l4 if they had a similar rich userland available for l4.
an older demonstration of an l4-based secure os from the same people (?) is tu:dos:
http://www.osnews.com/comments/13958
live-cd:
http://demo.tudos.org/
there is also a simple live-cd of genode running on l4/fiasco: http://genode.org/news/download/live-cds
doesn’t do very much, but is still impressive for an 2,8 mb iso.
it seems to me like genode is just a further developed tu:dos?
You have a wandering colon (probably treatable with medication). The project was tud:os, as in Technische Universitaet Dresden Operating System.
Darn, I was hoping it was another version of DOS to play with. GUI’s are for WIMP’s ;}
I was wondering about the differences between Hurd and genode. I know enough to know the differences between monolithic and microkernel design.
no any more:
“By now, the development of Hurd/L4 has stopped.”
http://www.gnu.org/software/hurd/hurd/history/port_to_l4.html
another dead end for the hurd. so they are still using the mach-kernel. but i don’t think that this is their major problem.
Edited 2009-05-27 15:50 UTC
Oh right, I forgot about that. Thanks for the correction.
They are developing viengoos
When viewed from 10,000 feet, both projects share the same goal of building a microkernel-based multi-server operating system. But the intentions and approaches are very different. Hurd started with the goal of becoming a more flexible and secure Unix. Therefore, POSIX compatibility was regarded as prime objective. However, as explained by Neal Walfield and Marcus Brinkmann in their insightful paper “A Critique of the GNU Hurd Multi-server Operating System”
http://www.walfield.org/papers/200707-walfield-critique-of-the-GNU-…
this undertaking turned out to be extremely complicated, in particular because of legacies inherited from POSIX. In contrast, Genode disregarded POSIX compatibility for building the foundation of the system and instead went for an API that is as minimalistic as possible but still allows to build complex sub systems on top. This turned out to be the key for the extremely low source-code complexity of its base system.
Even though Genode does not regard POSIX as a first class citizen, POSIX compatibility remains an essential feature to allow the reuse of existing applications until native Genode applications become available. For this reason, a POSIX execution environment and/or virtualization solution became part of the road map. But POSIX will be provided on top of the OS rather than being the foundation of the OS.
Genode is somehow related to TUD:OS. Back in 2006, the main Genode developers had been responsible for the TUD:OS demo CD available at http://demo.tudos.org. However, Genode was built completely from scratch, taking the experiences made with TUD:OS into account. Today there is (unfortunately) no connection between both projects.
Edited 2009-05-27 17:24 UTC
RE: Full track download
RE: Full track download its easy now.
Select the full track and copy paste it.Hope you enjoy the full track too
Now this is kind of impressing what these guys are doing. Not quite sure yet “why” they are doing it . As I understand having a choice between kernels and solid API on top of it would allow developers to:
1. write applications that will run ok on all these kernels
2. choose kernel that suits best for given hardware platform/task
3. provide nice abstraction layer for hardware etc.
Wasn’t POSIX all about that?