Genode participation at GSoC 2012 Apr 25, 2012

Tobias Börtitz steps up to the challenge of combining the HelenOS kernel with the Genode userland.

Google has announced the list of scholarships accepted for this year's Google Summer of Code program. Thanks to HelenOS being an accepted mentoring organization, we are happy to announce the project of Tobias Börtitz, who will bring the worlds of HelenOS and Genode closer together:

Genode Labs will support Tobias on his quest. His mentor will be long-time Genode developer Stefan Kalkowski. We are looking forward to working together on this intriguing topic!

New dynamic run-time configuration support Apr 11, 2012

A new mechanism for re-configuring subsystems at run-time paves the way to sophisticated general-purpose usage scenarios.

Genode's approach to system configuration facilitates a unified way for supplying parameters to individual components as well as to entire subsystems. Thanks to the recursive nature of Genode, complex system-integration problems can be segregated into multiple problems of low complexity whereas each partial problem retains to be individually testable. Thereby, this solution greatly mitigates the manual labour of system integration even for highly complex scenarios.

However, until now, the mechanism was limited to supplying configuration parameters at the creation time of components. Once a component is running, it was expected to adhere to a fixed predefined policy. With Genode's move towards general-purpose computing, many use cases are popping up where this limitation becomes a hindrance, for example the dynamic changing of screen resolutions, mixer settings, user-input calibration, and GUI policies.

To accommodate such use cases, we have extended Genode's configuration concept with support for re-configuring components at runtime. The new feature has landed in the master branch just now:

In addition to alleviating the problems mentioned above, the new mechanism enables many new opportunities to use Genode's slave pattern in creative ways. To illustrate how this is supposed to work, the commit contains examples for dynamically generating configuration data by a separate service as well as by the master of a slave component.

GSoC 2012 application rejected Mar 17, 2012

Unfortunately, Genode Labs was not accepted as mentoring organization for this year's Google Summer of Code program.

We just received the following notification from Google:

Thank you for submitting "Genode Labs" organization application to
Google Summer of Code 2012. Unfortunately, we were unable to accept
your organization's application at this time. We received many more
applications for the program than we are able to accommodate, and
we would encourage you to reapply for future instances of the program.

Best regards,

Google Open Source Programs

Google Summer of Code 2012 Mar 08, 2012

Genode Labs applies as mentoring organization at the Google Summer of Code 2012 program.

If you are a student interested in working on a Genode-related topic during the summer, the application of our project to this year's Google Summer of Code (GSoC) program may provide you with the perfect opportunity. If accepted, you will be able to work on one of a wide range of intriguing topics, get hands-on experience with advanced OS technology, and learn from the methodologies of long-term systems architects and developers mentoring your work.

Learn more about Genode's aspired participation in GSoC 2012 at our dedicated Google Summer of Code 2012 website...

Genode OS Framework release 12.02 Feb 28, 2012

Version 12.02 comes with a new API for MMIO access, a new ACPI driver, fork support for the Noux runtime, Qt version 4.7.4, and special support for using Genode as application framework on Linux.

We took the current release cycle as opportunity to carry out our plan to open up our development process. Because carrying out such a fundamental change of our work flows and tools bears many risks, we were curious about the outcome of this undertaking. We can happily report that the transition went actually better than expected. Genode 12.02 is the first version conducted under a completely open development model.

The new version contains the first steps towards the goal of using Genode as general-purpose OS for the daily use by its developers. The Noux runtime environment has been enhanced with support for the fork system call, which enables us to run the bash shell and coreutils natively on various microkernels. A new ACPI driver paves the ground for using the whole feature set of Fiasco.OC and NOVA on recent x86-based hardware platforms. Furthermore, you can find the first bits of a new device-driver manager.

The framework's base API has been enhanced to foster code reuse and robustness. For example, we introduced a new API for accessing memory-mapped I/O resources, which facilitates the use of the C++ type system to simplify device drivers. Another example is the added API support for the common pattern of reusing existing components as sandboxed libraries.

These and many more changes are described in full detail in the release notes of version 12.02...

Slides of our talks at FOSDEM 2012 Feb 14, 2012

The slides for both Genode-related talks at FOSDEM 2012 are available.

At this year's FOSDEM, the Genode project was present with two talks and the participation in a panel discussion at the microkernel developer room.

Norman Feske held an introductory talk, presenting Genode's architecture and demonstrating several use case live:

Stefan Kalkowski presented his experience with supporting many different kernels as base platforms of Genode:

The abstracts of both talks are available at the updated publications section.

Source code moved to GitHub Jan 17, 2012

GitHub has become the central place for Genode's mainline development.

Moving Genode's code base to the new public GitHub repository represents the final step on our agenda to open up our development process. From now on, the genodelabs/genode repository is where the current development happens:

To follow the development of the master branch, you may like to subscribe to the corresponding Atom Feed.

In addition to having moved the code over to the new repository, our documentation and website underwent several changes. First, the genode.org website has been migrated away from the original Plone CMS to an entirely static custom-made CMS that fetches its content from the genodelabs/genode repository. Thereby, most of the web-site content has been incorporated into the repository and will be managed through Git. Second, the Wiki is no more. Its content has been moved to the normal documentation section. By using Git for the documentation, the process of contributing to the documentation is streamlined with the way of how code contributions are handled. The steps of this process are described in the updated how-to-contribute guide.

So far, our experience with using GitHub for hosting the Genode development has been a smooth and overly enjoyable ride. We hope you will appreciate the greatly liberated development process as much as we do.

Genode at FOSDEM Jan 04, 2012

Meet us at FOSDEM 2012, to be held on 4-5 February in Brussels.

FOSDEM is one of the world's largest events of the Free-Software and Open-Source-Community.

This year, it will feature a dev room specifically dedicated to multi-server and microkernel-based operating systems. The list of participating projects include HelenOS, MINIX, GNU Hurd, and Genode. The dev room will host talks, discussion sessions, and demonstrations. Among the talks, there will be an introduction of the Genode OS Framework presented by Norman Feske:

Abstract

Today's operating systems try to find a balance between seemingly conflicting goals. Ease of use is traded against security, resource utilization is traded against resource accountability, and system complexity is traded against scalability. For example, SELinux is ill famed as hard to use and consequently remains widely unused. As another example, isolation kernels minimize the complexity of critical system software but at the cost of limiting these solutions to static applications.

The Genode OS architecture shows how these apparently inherent conflicts can be solved by operating-system design. By combining a recursive system structure with capability-based security, mandatory access control becomes easy to deploy. At the same time, the trusted computing base can be minimized for each application individually such that the attack surface for security-critical system functions gets reduced by orders of magnitude compared to existing approaches. Furthermore, a concept for trading physical resources among processes allows for dynamic workloads while maintaining quality of service. That is not just theory - the system is ready for demonstration and its developers are planning to use it as development environment by the end of 2012.

After a brief introduction of where Genode comes from, the main part of the talk will be focused on the OS architecture and give a glimpse at the implementation via live demonstrations. Finally, the talk will briefly discuss the planned steps towards using Genode as general-purpose OS.

For everyone interested in operating systems in general and microkernel technology in particular, this year's FOSDEM is a great opportunity to get in touch. We are looking forward to meeting you in Brussels!

Road Map 2012 Jan 02, 2012

The road map for 2012 envisions the use of Genode as everyday development platform.

The overall theme for Genode in 2012 will be the practical use of our OS technology for carrying out regular development work. We see this as the best way to proof the maturity of the framework. Furthermore, by eating our own dog food, we generate a strong incentive for ourself to address topics that would otherwise be deferred.

For assembling the road map, we introspected ourselves and identified a list of functionalities that we could not live without, ranging from a Unix-like command-line interface, over the support for specific PC hardware, to fancy features such as a tiled window manager.

We plan to publish four releases at our quarterly release cycle. So the list of desired functionalities are spread throughout those releases. However, each release will have a different emphasis.

Version 12.02 will be geared towards the usage scenarios that we are going to present at our next Live CD scheduled for March. For version 12.05 we are planning a major rework of our arsenal of Linux-based device drivers. The release 12.08 will be the tipping point for making the initial switch to Genode by including Intel wireless drivers and a tiled window manager. Towards the end of the year, we will take the opportunity of version 12.11 to optimize the support for our beloved Lenovo Thinkpads and bring additional tools such as emacs to the table.

Review our road-map for more details...