Roadmap 2018

Norman Feske norman.feske at ...1...
Fri Dec 22 22:47:33 CET 2017

Hello everyone,

like every year in December, I'd like to kick off the discussion of
Genode's road map for the upcoming twelve months. It goes without saying
that your feedback and suggestions are very welcome. Should you have any
plans related to Genode, please do not hesitate to chime in!

Before I present my rough plans, let me take a minute to review the past

Review of 2017

As Johannes Schlatow's team put it so nicely in their Christmas card
(thanks a lot!), the "Turmvilla" era lies behind us. So let the "Sculpt"
era begin! Whereas Turmvilla allowed me to work on a Genode-based system
since mid of 2015, the scenario was quite rigid and required significant
manual labour for any customization. Although it was not really inviting
for potential users, it illustrated well that all the basic building
blocks - in particular the driver stacks - were in place. But it would
have been be quite a stretch to call Turmvilla a general-purpose OS at
that point.

The new Sculpt scenario that I started to put together this autumn
leverages two key features of 2017 to ultimately enter the realms of
general-purpose computing. Those features are the dynamic init and the
package management. The combination of Genode's recursive architecture
with the dynamic reconfigurability of the init component allows me to
interactive shape the running Genode system including any subsystem or
even configurations of individual components. The system structure is at
my fingertips and I can change it instantly using my favorite text
editor. This excites me to no end! :-) At the same time, the new package
management greatly helps to keep the complexity at a manageable level.
Whereas I rarely updated my Turmvilla installation out of hesitance to
break my work environment, I routinely update Sculpt on a weekly basis.
Not only do I but also all my team mates at Genode Labs! The switch of
the entire Genode-Labs team to Genode full time was certainly our
biggest milestone of the year.

At the technical level, the use of the gained cross-kernel binary
compatibility or the VFS infrastructure have already become a second
nature. Regarding the latter, remodelling this infrastructure to an
asynchronous mode of operation was certainly a long and stony way. I am
extremely grateful to Emery and Christian for having taken a big share
of this labor-intensive work! Now, we can start to reap the fruits of
this development.

How to proceed in 2018?

Personally, I'm to eager to take Genode in two main directions. First,
the Sculpt scenario will for sure spawn manifold developments to the
benefit of end users. Those developments will include documentation to
make Sculpt palatable to users, the further cultivation of Genode's
package-management concept, the composition of new subsystems, and the
optimization of daily work flows. The progress in this direction will be
quite organic and primarily motivated to make our daily computing
experience more effective and fun.

The second direction is the application of Genode for real-time graphics
and sound processing - in a way reigniting my past passion of
programming demo effects on the Atari Falcon. ;-) The path for this
activity was paved this year by Josef and Sebastian who created our
driver infrastructure for Intel GPUs. By actively using this
infrastructure along with the audio stack, I am eager to push Genode
towards low-latency multimedia performance. In order to do that, I will
have to improve the tools for gathering runtime data (e.g., putting our
tracing infrastructure to good use), gain a profound understanding of
the behavior of complex scenarios, and optimize.

Aside these playful activities, I also want to focus on the quality and
resilience of our software. The modernized framework API introduced last
year is an important stepping stone. But there is much more we can (and
should) do, I.e., learning from the high-integrity computing community
(e.g., implementing critical components in SPARK), leveling-up the scope
and intensity of our automated tests, facilitating static code analysis,
and employing software-hardening techniques. Of course, this scope goes
far beyond the time frame of one year. The immediate priorization of
these topics will largely depend on the focus of commerical users
funding the work.

The aspirations outlined above are my personal perspective. Please do
not hesitate to share yours! Any comments and suggestions are
appreciated. Maybe you even have tangible or less tangible
Genode-related plans as well? I would be happy to learn about them!

The outcome of the discussion will eventually become the official road
map for 2018, which I am going to announce in mid of January.


Dr.-Ing. Norman Feske
Genode Labs ·

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth

More information about the users mailing list