Hello,

with 2023 I continued the former PC suspend/resume work done in 2022 for the NOVA kernel and integrated the feature also to base-hw. Unfortunately, after the low level kernel work was in shape, various higher rated work items led in the course of the year to insufficient time to push this item appropriately, namely adjust all our device drivers to play well after resume.

Beside quite a lot of customer triggered work, worth mentioning is the update of seL4 to 12.1 and the update of the Intel device driver and the subsequent backend integration changes towards usage of the DRM related interfaces in our port. Additionally, I contributed various acpica and usb-c attached display related fixes which also improved the Gen12 framework notebook support.

My former spare time developed and maintained x86 CPU Intel/AMD power/frequency extension for the NOVA kernel got generalized and streamlined to the Genode framework and is part of Sculpt OS.

In my Genode related spare time I maintained the experimental multihead extension of the Intel display driver, which I use day-to-day. Beside that, the actual most interesting and partially strenuous topic was for me to take a deep dive into the x86 world to extend the Seoul VMM for 64bit guests. With the end of the year I got all pieces together and was happy to operate my disposal 64bit Firefox VM for Intel and AMD. But the actual icing on the cake was shortly before Christmas, where I could replace vbox by Seoul to operate my day-to-day main developer VM - _grin_.

For 2024, presumably the PC suspend/resume topic related to our drivers will keep me busy. Additionally, in general I'm interested to get/add a general multi-head support for Genode, a port of Qemu to Genode with goa?, a port of the AMD display driver part, e.g. pick up the work of Josef of amdgpu_fp_drv, and various Seoul VMM improvements which improves life further.

Cheers,

Alex.

On 12/21/23 4:57 PM, Norman Feske wrote:
Hello everyone,

in his most recent posting, Credric already noted that now is the time of year again to reflect on our achievements of this year and to anticipate topics to pursue next year. To keep up with this fine tradition, let me kick off our road-map discussion with my personal perspective.


Reflections of 2023

As indicated by the overarching theme of the last roadmap "Rocking the platforms we support!", Genode's four releases of 2023 had a strong focus on low-level platform work. This has been especially visible on modern PC platforms like the Gen12 Framework laptop I have under my fingertips right now. At the beginning of 2023, Sculpt OS was in principle working on this machine, but with compromises that spoiled the user experience: fan noise, an erratic touchpad (using the firmware's PS/2 emulation), Fn key having no effect, strange issues when re-plugging an external display, and no indication of the battery state. In the meantime, not only are all these rough edges gone, but we even gained the ability to exercise precise control over the machine' performance/frequency/temperature/power characteristics using an interactive GUI. I think it's fair so say that Genode advanced far beyond the state of "working" and has entered the territory of "rocking".

I wish to name four further personal highlights of the year:

First, we got the mobile version of Sculpt OS into the hands of a pilot group of users who provided instructive feedback to us. From my perspective, the system-update mechanism that I created for this purpose turned out to be an almost pivotal point in the evolution of Sculpt OS because it reduces the effort and risk of test-driving experimental versions to almost zero. It was a pleasure to see how e.g., Johannes leveraged this new way of gathering feedback for his IOMMU line of work. Providing system images for testing has become a second nature.

Second, the road map for 2023 envisioned Sculpt OS running on our custom base-hw kernel on the PC. We identified DMA protection and virtualization support as the two remaining showstoppers. With much excitement, I followed how both of these deeply technical topics got covered over the course of the year.

Third, Goa finally emerged from a personal project of mine to an official Genode project led by Johannes. I'm stunned how much the project benefited from this change. All of the remaining backlog of my vague plans - I'm thinking of the index-project support or bash completion - got eventually realized in a way true to the spirit of the project. The fate of the Goa tool makes me immensely happy.

Fourth, during the first half of the year, I found myself intensively working on Genode's new debug-monitor component, pursuing the idea to implement a debugging instrument as a specialized version of init augmented with the GDB protocol. This engagement was pretty much motivated by a customer. The result of my initial work then seamlessly transitioned into the hands of Christian Prochaska who did a marvelous job with steadily advancing this line of work towards our joint vision of on-target debugging on Sculpt OS. The technical feats notwithstanding, I found the frictionless way of collaborating a pure joy.

Besides the highlights above, one topic close to my heart was the creation of the dialog API that I designed as necessity to make the code of Sculpt's administrative user interface maintainable and easy to extend in the longer run.

Plans for 2024

After concentrating so intensively on topics below the surface, I now long for reaping user-visible rewards. Speaking of the dialog API just mentioned, I see potential in using this new infrastructure for Genode-native applications and immediately think of the file manager that I already wanted to tackle this year. But I also have plenty of ideas to make Sculpt OS more user friendly. What about presenting the README files of software packages directly in the GUI? Making the component graph scrollable? Allowing the user to select an arbitrary directory as a file system to a component? Buttons for saving the current deployment or the settings?

Beyond Sculpt's administrative user interface, I'd also like to attend the GUI stack. I think of refining the GUI-session interface to remove tearing artifacts, to better support desktop-UI-paradigms like drag'n'drop, and to explore the opportunity of using nitpicker's mechanisms at the application-level, not only at the window-composition level.

Hence, I'd condense my ambition for the next year to "Sculpt OS usability".

Device-wise, I'm going to continue my engagement with the PinePhone and look forward to the upcoming MNT PocketReform laptop.


Above I presented my personal view. How about your's? I would very much appreciate you sharing your feedback, ideas, concerns, and plans regarding Genode.

How are your interests aligned with the perspective shared above?

Do you see specific pain points that deserve the attention of Genode's core developer team?

What is your perspective on Genode's past year's accomplishments?

Can you share your ambitions or even concrete plans?

How and where would you like to see Genode at the end of 2024?


Cheers
Norman


--
Alexander Boettcher
Genode Labs

https://www.genodians.org - https://www.genode.org

_______________________________________________
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users

Reply via email to