|
|
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/.
|