Hi Sid,
thank you for presenting your review of the past year and your outlook for 2021.
Personally, I finished the named pipe feature of the vfs/pipe plugin to my liking [1]. The main motivation behind it was to easily stream data from pure Genode components to libc components via file-system sessions that can be attached to stdin, stdout and stderr. This feature also makes it possible to pipe several components together similarly to how it is possible on unix.
I think this mechanism has a lot of potential. E.g., for simplifying scenarios like the ssh-exec server.
Since you linked the issue, would now be a good time for a wrap-up, considering the feature for staging?
Where do you see untapped potential of Genode?
I share Stefan Kalkowski's view on Genode's resilience aspect as its biggest potential. Additional to the resiliency of the system architecture as a whole, I see potential in the stability of the libc runtime. Further, exposing the hard real-time capabilities from (some) kernels to the Genode user-land would open up new possibilities as well.
I agree. We should definitely keep up with the continuous work on the libc edge cases. At times, your use cases - especially combining networking and pthreads - presented really hard nuts to crack, but it was all worthwhile. ;-)
How do you envision Genode in December 2021?
- A stable libc runtime that makes it easy and safe to port existing
C/C++ code
- Go support
- Performance improvements regarding networking
- Extended ARMv8 support, namely IOMMU protection
From my perspective, it is exciting to see your commitment to the Go
support. I'm curious how this story continues.
How do you feel about mentioning this topic on the official road map? Can you foresee which Genode version would be a realistic goal for this feature?
Cheers Norman