Genode OS Framework release 17.11 Nov 30, 2017

Most of the many improvements of version 17.11 are geared towards the practical use of Genode as day-to-day OS. They include a reworked GUI stack, new user-input features, and the packaging of many components. The new version also revises the boot concept on x86, updates the seL4 kernel, and enhances Genode's user-level networking facilities.

Whereas each Genode release is usually focused on one or two flagship features, version 17.11 accumulated countless improvements made during the practical use of Genode on a day-to-day basis. The topics range from convenience features like scroll-wheel emulation for Lenovo trackpoints, over the proper handling of keyboard modes (numlock and capslock), to a reworked GUI stack that takes new usage patterns into account. Since the forthcoming general-purpose scenario is entirely based on Genode's recently introduced custom package-management concept, it prompted us to package all ingredients of the scenario.

On the platform level, the new version streamlines the boot concept on x86 among all supported kernels. All x86 microkernels consistently use GRUB2 now. Modern kernels like seL4, NOVA, or our custom kernel are able to boot via UEFI and legacy boot. Speaking of our custom kernel, the current release wraps up a long-term internal redesign that simplifies the kernel while improving its performance.

Feature-wise, the new release further cultivates the use of the Nim programming language for native Genode components, includes a port of libretro-based emulators for game consoles, and enables the resizing of libSDL-based applications like avplay.

The complete picture is presented in the official release documentation of version 17.11...

Genode OS Framework release 17.08 Aug 30, 2017

Version 17.08 enables hardware-accelerated graphics on Intel-Gen8 GPUs and expands Genode's seL4-kernel support to the ARM and 64-bit x86 architectures. Further topics are UEFI boot, VFS enhancements such as a new FatFS plugin, and the use of Genode as Xen DomU.

The new release bears the fruit of our long-term investigation of hardware-accelerated graphics on modern Intel platforms that we conducted over the past year. The result is a brand new low-complexity GPU multiplexer that is designed after microkernel principles. With far less than 10K lines of code, it paves the ground for leveraging the power of GPUs at an extremely tiny footprint on the trusted computing base. The GPU multiplexer is accompanied with the matching application-side library infrastructure such as Mesa, libdrm, Qt5 bindings, SDL bindings. This allows Genode components to use the GPU with standard APIs like OpenGL.

The seL4 microkernel is becoming more and more popular. Since about one year, most Genode scenarios are able to use this kernel on the 32-bit x86 architecture. The growing interest in the combination of seL4 with Genode prompted us to expand the architecture support to ARM and 64-bit x86 now. Additionally, we enabled SMP on x86, priority support, and Genode's CPU-time monitoring facility on this kernel.

Speaking of Genode's underlying kernels, the current release equips NOVA, seL4, and our custom base-hw kernel with UEFI-boot support. It updates the Muen separation kernel to a current version, and adds the ability to run Genode as Xen DomU domains.

These and the many more topics of the new version are covered by the release documentation of version 17.08...

Genode OS Framework release 17.05 May 31, 2017

With a profoundly updated framework infrastructure such as GCC 6.3, Qt 5.8, and VirtualBox 5.1.22 for NOVA, the just released version 17.05 promises to be a suitable basis for longer-term maintenance and is accompanied with a new edition of the "Genode Foundations" book.

With the mid-year release of Genode, we hope to provide a solid basis for long-living projects built on top of the framework. For this reason, we updated the official tool chain as well as our ports of Qt and VirtualBox to current versions, which are there to stay in the foreseeable future. We also finalized the series of architectural and API-related changes that we started one year ago. The release is accompanied with a new edition of the "Genode Foundations" book that reflects the current state of the framework.

Feature-wise, the most visible improvement is a new approach and the corresponding tooling for package management. While still officially declared as experimental, it already becomes apparent that it will bring Genode to a new level of scalability. Among the many further improvements are the support for the Ada and Nim programming languages, a new timing API, and new tools for monitoring network traffic and CPU load. All changes are covered in full detail in the release documentation of version 17.05...

Google Summer of Code Mar 01, 2017

Genode will participate under the umbrella of the FOSDEM microkernel devroom as mentoring organization in this year's Google Summer of Code program.

Thanks to the initiative of Jakub Jermar and Martin Decky of the HelenOS project, multiple prominent open-source microkernel projects submitted a joint application to this year's Google Summer of Code (GSoC) program under the umbrella of FOSDEM microkernel devroom.

As announced on the umbrella's official GSoC page, the involved projects are HelenOS, Redox, MINIX 3, and Genode. In anticipation of the application, we have largely revisited our list of future technical challenges:

Genode-related topics: https://genode.org/about/challenges

Those topics are meant as inspiration. It goes without saying that we welcome other suggestions. If you are interested to participate in this year's GSoC with a Genode-related topic, the following steps are best way to get started:

Learn the basics about Genode by skimming through the Genode Foundations book, downloading the code, and experimenting with a few simple example scenarios. You will find the steps described in the book.

If this experience leaves a good impression on you, please continue with making yourself known at the Genode mailing list by posting a short introduction of yourself, your primary interests, and possibly a topic that you'd like to engage in. Please don't hesitate to consult the list with any technical questions you might have. Note that the mailing list will be the tool of choice for mentoring you during GSoC. Hence, you should be comfortable in using it. Please keep in mind that friendly and concise written communication is crucial for our project, and will thereby be an important criterion for considering your application.

We thank Google for accepting the microkernel devroom as a mentoring organization this year and look forward to GSoC students engaging with us!

Genode OS Framework release 17.02 Feb 28, 2017

By introducing application binary interfaces, version 17.02 cultivates the cross-kernel binary compatibility of components. Furthermore, the new version comes with a vastly improved VFS infrastructure, new input-event processing capabilities, and a dynamic component-composition engine.

On the long road towards binary compatibility of Genode components across OS kernels as different as L4, NOVA, seL4, or Linux, we reached a breakthrough by mid of 2016. It took us another six months to fully cultivate this unique feature and to integrate it seamlessly into our development work flows. With the current version, we have ultimately reached the point where one can move entire system scenarios from one kernel to another in just a few seconds.

With the improved virtual file-system (VFS) infrastructure that comes with the new version, such system scenarios can become more and more sophisticated. Genode takes the meaning of virtual file systems to an entirely new level. Not only does Genode virtualize the physical location of files but each component can have its own VFS whereby the supported file-system types are provided by VFS plugins. Those plugins can go as far as providing a TCP/IP stack as showcased by Genode's use of the Linux TCP/IP stack as VFS plugin.

The composition of subsystems out of Genode components is another highlight of the current release. In each Genode-based system, the init component already plays a central role as it bootstraps the initial system components. Thanks to Genode's recursive system structure, init can easily be nested. With the improvements of the new version, such a nested init becomes a dynamic system-composition engine that responds to configuration updates and applies changes to its subsystem in a differential way.

These and many more improvements are covered in full detail in the release documentation of version 17.02...

Open-source license update Feb 21, 2017

With the upcoming version 17.02, Genode will adopt the GNU Affero General Public License (AGPLv3) as its regular open-source license.

Since our first release in 2008, Genode has been available under two flavors of licenses addressing different user bases. With Genode's regular open-source license, we address the Free-Software community, researchers, and technology enthusiasts. With the commercial license, Genode Labs enables product vendors to leverage Genode's technology for their businesses.

For our open-source license, we originally picked the time-tested GNU General Public License version 2 (GPLv2). However, the time did not stand still. After 9 years, it is time to update the license to a more recent version. After careful review of the open-source licensing landscape, we settled on the GNU Affero General Public License (AGPLv3), which is based on the GNU GPLv3 and thereby rectifies several shortcomings of the GPLv2. Furthermore, it closes loopholes of the GPLv3 license with respect to web applications. Unlike 2008 when most applications were programs executed directly on the end user's computer, web applications have become predominant by now.

To address possible concerns about the interoperability of the AGPLv3 with other open-source licenses, Genode's license will be accompanied with a linking-exception clause that clarifies our consent to link Genode with all commonly established open-source licenses.

In December, we presented our plan of the license change to the subscribers of Genode's mailing list. The following constructive discussion within the community helped us to refine our linking clause and to create a common understanding of the rationale behind our licensing choice. Thanks to everyone who participated in this discussion!

Road Map for 2017 Jan 17, 2017

The year 2017 will be overall focused on stressing the scalability and stability of the framework.

After wrapping up the revision of Genode's architectural underpinnings and its API in 2016, it is time to push the scalability of the framework further. Over the course of 2017, we plan to greatly ease the creation of Genode systems out of packages, enable automated system updates, move our regular work flows from GNU/Linux to the Genode world, and extend the application scope of Genode systems to cloud-based appliances.

The new road map is available at the road-map page.

Genode at FOSDEM 2017 Jan 11, 2017

The microkernel developer room at this year's FOSDEM will host four Genode-related talks, ranging from our custom kernel, over kernel-independent binaries, execution replay, to Genode's VFS infrastructure.

To us, the microkernel developer room at FOSDEM in Brussels has become the most anticipated joint event of the open-source microkernel world. The developer room is part of FOSDEM, which is the world's largest event of the Free-Software and Open-Source community. The upcoming FOSDEM will be held on 4th - 5th of February in Brussels:

FOSDEM 2017: https://fosdem.org/2017/

Originally initiated by our friends of the HelenOS project, the micro-kernel developer room is shepherded by a different project each year. In 2017, it's our turn to host the event. The developer room is open for all open-source projects that are related to microkernels or component-based operating systems. It features a mix of project introductions, experience stories, progress reports, discussions, and demos. This year, the following Genode-related topics will be presented:

Saturday 10:45 A kernel in a library Genode's custom kernel approach Microkernel devroom (AW1.125) abstract...

Saturday 12:45 Deterministic replay support for Genode components Microkernel devroom (AW1.125) abstract...

Saturday 14:24 Introducing kernel-agnostic Genode executables Microkernel devroom (AW1.125) abstract...

Saturday 17:10 The VFS paradigm from the perspective of a component OS Microkernel devroom (AW1.125) abstract...

The complete schedule of the developer room is available at https://fosdem.org/2017/schedule/track/microkernels_and_component_based_os/.