Hi all,

For those who don’t know me yet: I am a PhD student working on Genode as 
foundation for researching novel concepts and architectural designs for 
data-center system software and gave a talk about Genode on FOSDEM three years 
ago.

At the beginning of last year, I started porting the extension I made to 
Genode, namely NUMA support and dynamic resource allocation for components to 
Genode 25.02. As, Genode had diverged quite a lot since I started my 
modifications in 2022, I used the opportunity to completely redesign the 
handling of NUMA topology information and resource allocation. The reasoning 
behind this was, to make all my modifications available as an additional 
micro-kernel with its own specialized version of Genode’s “core” service. Thus, 
I hope, future upstream changes in Genode’s Core API can be more easily 
integrated into my fork of Genode. Furthermore, the redesign of my extensions 
allowed me to greatly improve the stability of the dynamic resource allocation 
for components while also improving its performance. 

This has also has been the year, where I finally implemented my plans for a 
NUMA-aware scalable hoard allocator that could replace Genode’s heap in 
scenarios with many parallel memory allocations as for example in database 
workloads, where not just scalability is needed but also the ability to 
allocate memory from specific NUMA regions in advance to improve NUMA-locality 
for future memory accesses. I have evaluated the performance of my new memory 
allocator with the “Larson” memory benchmark which is commonly used to evaluate 
the performance and scalability of memory allocations in server applications. 
The evaluation showed significant improvements for my allocator over Genode’s 
default allocator. Currently, I use my allocator even as a replacement for 
libC’s heap on Genode to test its performance and stability in real world 
applications. There might come up a pull requests, once, I have cleaned up the 
code and made it platform-agnostic.

After I attended last year’s Hack’n’Hike where Norman explained to me how 
SculptOS implements the dynamic creation of components, I could finally 
implement my own CLI-based remote shell for Genode (think of it as the CLI 
version of Leitzentrale). Now, my colleagues and I can run various evaluation 
campaigns on Genode on our servers without manually having to compile a new 
Genode image and restart our servers for each change in a scenario, as we had 
to before, because Leitzentrale did not work on our servers (for some it did 
not start at all and for another server it started but keyboard and mouse 
didn’t work) and we didn’t need a GUI but scriptable manager instead.

In the meanwhile, as kind of a side quest, I analyzed and experimented with 
Genode’s network stack, as using it for data-center workloads revealed some 
bottlenecks. 

In conclusion, 2025 was finally the year I got not just a first prototype of my 
envisioned data-center OS but also one that can new be used by others.

As I will be on search for a new job in 2026, as my contract at the university 
comes to an end in February, I am not sure whether my plans for 2026 work out 
as intended. Nonetheless, I’d like to present some of the work I’d like to do 
in 2026.

First and foremost, I’d like to use 2026 to improve the scalability and 
performance of Genode’s network stack which would benefit running server 
applications on Genode as well as network-bound desktop applications. In this 
regard, I like the idea to build bridges to other projects and applications for 
Genode. I imagine one could also build bridges into server and cloud 
applications, too. For example, I think of porting a set of typical server 
applications (such as memcached and a DBMS) to Genode. Which together with 
lighttpd (or even a port of apache or nginx) would enable Genode to host 
dynamic websites such as content-management systems, blogs such as Wordpress, 
or even instances of the fediverse.

 Above all, I am more than ever convinced that Genode’s architecture combined 
with the concept of microkernels provides a better foundation for today’s cloud 
infrastructure than Linux or Windows can provide, as I will discuss in my 
upcoming talk at FOSDEM 2026.

I really like the idea of building bridges and hope to see more applications of 
Genode in the future.

Cheers,
Michael

...............................................................................................................................................
 
Michael Müller
Wissenschaftlicher Mitarbeiter (DFG-Projekt MxKernel)
AG Eingebettete Systeme — Institut für Informatik
Raum 50/613a
Telefon: +49 541 969 3891
E-Mail: [email protected] <mailto:[email protected]>
Homepage: ess.cs.uos.de/team/mml <https://ess.cs.uos.de/team/mml>
_______________________________________________
users mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Archived at 
https://lists.genode.org/mailman3/hyperkitty/list/[email protected]/message/MBXMD3C4XW3XBD45YOPOKEAHNF3TSHZU/

Reply via email to