Genode OS Framework release 9.11 Nov 25, 2009
With release 9.11 Genode gets Webkit, USB storage, TCP/IP stack, support for ARM, OKLinux and more ...
For the project, the current release is a major leap towards the goal of Genode to become a general-purpose OS platform. The addition of OKLinux - a paravirtualized Linux kernel - to the distribution makes it possible to run security-sensitive native Genode applications side by side with unmodified Linux binaries. This particular version of Linux has no direct hardware access but rather uses native Genode services as virtual hardware devices. With respect to available device classes, we extended Genode's support to cover USB storage and networking drivers. Moreover, the porting of the Light-weight IP stack and Q4/Webkit now enables developers to create web applications on top of Genode. Beside the new functionality, Genode's platform scope was broadened by initial support of the ARM architecture.
Read on about these and all additional changes in more detail in the release notes for Genode 9.11....
Genode Live Demonstration 2009-09 Sep 02, 2009
The latest release of the ready-to-boot Live CD image is available.
The Live CD features the graphical demonstration of the Genode architecture, known from the last Live CD. But this time it doesn't run on L4/Fiasco only. It also can be started on top of the L4 microkernels OKL4 and Pistachio. Moreover, it features QT4 application support and a para-virtualized Linux version running on top of Genode. The Live CD runs directly on PC hardware and has been tested on Qemu/KVM and VirtualBox.
Edit: We have further improved the performance of the L4/Fiasco and L4ka::Pistachio demos, and refined the presentation of the Qt4 demo.
Genode OS Framework release 9.08 Aug 19, 2009
The release 9.08 advances the portability of the operating-system framework to a new level.
We have released the version 9.08 of the Genode OS Framework. The general theme of this release has been refinement. We are particularly happy for having resolved long standing concerns about our locking and signalling implementations. The actual focus of our work during the last three months was the unification of all supported base platforms resulting in many generalizations of former platform-specific code. We managed to bring the code for the Linux version very much in line with the supported L4 platforms, reducing platform-specific source-code complexity and maintenance costs. Feature-wise, the most important news are the port of the dynamic linker from FreeBSD, the added support for thread-local storage, a much improved timer service, and core extensions for running Linux on the OKL4 version of Genode.
Read on about all the changes in the release notes for Genode 9.08...
Document about Genode's native Qt4 port available Jul 06, 2009
The document "Portierung von Qt auf Genode" (german) describes the undertaking of making the Qt4 framework natively available on Genode. Among many technical insights, it provides an overview about the integration with Genode's GUI, and explains how Qt4's low-level interfaces are mapped to native Genode functionality.
Qt4 is a popular and versatile C++ framework for developing platform-independent GUI applications. In addition to GUI-related functionality, Qt4 covers a comprehensive library of data structures and platform abstractions. It is widely used for both commercial and open-source applications, most prominently, it serves as the foundation of the KDE project.
Since the release 9.05, the official distribution of Genode supports Qt4 as a regular feature. The document "Portierung von Qt auf Genode" (german) describes the challenging endeavor of porting this high-complexity C++ framework to Genode. Major problems to overcome had been the missing C libary (at the time when the project started), the integration of the Qt4 project files with Genode's build system, the adaption of Qt4 to the basic primitives provided by Genode, and the integration of Qt4 with Genode's GUI. In addition to the mentioned technical insights, the document evaluates the achieved solution with respect to compatibility and maintainability.
Genode OS Framework release 9.05 May 27, 2009
With the release 9.05, we introduce the first fragments of USB support, update Qt to version 4.5.1, and add the OKL4 kernel as supported base platform.
The new release continues the general theme to enhance our potential user base by broadening the base-platform support and, at the same time, extending the functionality of the framework. We have now added the OKL4 kernel to the supported base platforms. OKL4 is a commercial-grade kernel developed by Open Kernel Labs and primarily targeted at embedded systems. Along with this integration work, we were able to further advance the portability of Genode by generalizing much of former platform-dependent code. On the feature side, we introduced the first parts of a USB stack, making Linux' USB host-controller drivers and a human-interface device driver available on Genode. As outlined in the release notes, there is also good progress on executing Linux as a sub system of Genode. Furthermore, we have now seamlessly integrated the support for the Qt application framework into the Genode source tree and bumped the version to 4.5.1.
Read on about the new features described int the release notes...
Bringing Genode to the OKL4 kernel May 06, 2009
We have enhanced the range of supported kernel platforms by bringing Genode to the OKL4 kernel developed by Open Kernel Labs.
With the port of Genode to the OKL4 kernel, we have taken another step to reach a broader user base of the framework. In contrast to the already supported microkernels L4ka::Pistachio and L4/Fiasco, the OKL4 kernel developed by Open Kernel Labs is largely deployed in commercial settings. Even though being a member of the L4 family of kernels, OKL4 has a much modernized kernel API that fits quite well with the Genode architecture. For example, OKL4 does not rely on an in-kernel mapping database, frees the IPC operation from wall-clock timeouts, supports asynchronous notifications, and provides kernel support for user-level synchronization.
In the process of porting Genode to OKL4 version 2.1, we took the chance of generalizing a lot of former L4-specific code such that the remaining platform-specific code is now in the order of less than 2,000 lines of code for each kernel platform. To ease future ports of the frameworks to other kernels, we have documented our work in detail. If you are interested in learning more about the OKL4 kernel from our perspective, or if you like to dive right into the inner parts of the Genode OS Framework, read on about Bringing the Genode OS Framework to the OKL4 kernel...
The OKL4 version is available at our subversion repository and will be included in the upcoming release 9.05. For further information about building and using Genode on OKL4, please refer to the new Genode on OKL4 Wiki page...
Genode on 64-bit Linux kernels Apr 17, 2009
Genode can now use both 32-bit as well as 64-bit versions of the Linux kernel as base platform.
From the ground up, Genode was co-developed supporting Linux and L4 as base platforms but the both versions were restricted to the 32-bit x86 architecture. We have now expanded the Linux support to 64 bit. Because most of the adaptions of Genode to 64 bit took place in generic code, we are now well prepared to support future 64-bit versions of L4 kernels as well. The patch for adding 64 bit support supplied by Christian Prochaska is now included in the current version of the Genode subversion repository.
Christian Prochaska joins our project as regular developer Apr 08, 2009
The developer of the Qt4 port for Genode joins Genode Labs to bring forward his Genode-related projects.
As the original developer of the Qt4 port for Genode, Christian Proachaska has gained long-time experience with running complex software on top of Genode. In the future, he will leverage his skills to further advance his Qt4-related work. Furthermore, he strives to improve the framework towards general-purpose computing. Currently, he is working on adding 64-bit support to Genode.
Genode OS Framework release 9.02 Feb 26, 2009
The version 9.02 of the Genode OS Framework introduces support for L4ka::Pistachio as base platform, a port of the Qt4 application framework, and networking.
Whereas the focus of the previous release 8.11 was the refinement of Genode's base API and the creation of the infrastructure needed to build real-world applications, the new release 9.02 is focused on functional enhancements in two directions. The first direction is broadening the number of possible base platforms for the framework. At present, most microkernels bring along a custom user land, which is closely tied to the particular kernel. Our vision is to establish Genode as a common ground for developing applications, protocol stacks, and device drivers in such a way that the software becomes easily portable among different kernels. This release makes Genode available on the L4ka::Pistachio kernel. Hence, software developed with the Genode API can now run unmodified on Linux/x86, L4/Fiasco, and L4ka::Pistachio. In the second direction, we are steadily advancing the functionality available on top of Genode. With this release, we introduce a basic networking facility and support for native Qt4 applications as major new features. Thanks to Genode's portability, these features become automatically available on all supported base platforms.
Read on about the new features described in the release notes...
Port of libSDL to Genode Jan 23, 2009
As announced on the Genode mailing list, the popular Simple Directmedia Library is being ported to Genode. A first version of the port and a demo application are already available.
The Simple Directmedia Layer library (libSDL) is a very popular cross-platform media library that provides hardware abstractions for graphics, input devices, and sound. It is often used as back end for games, emulators, and media players. Also the Linux version of Genode relies on the hardware abstractions provided by libSDL.
As announced on the Genode mailing list, libSDL has been ported to Genode. At the current stage, the port supports the video subsystem and the input handling for mouse and keyboard. With libSDL now becoming available for Genode, it becomes much easier to make the wealth of libSDL-based applications available on our platform.